On 22/06/2024 02.29, Takashi Yano via Cygwin wrote:
On Sat, 22 Jun 2024 07:22:42 +0900
Takashi Yano wrote:
Hi Federico,

On Fri, 21 Jun 2024 19:35:32 +0200
Federico Kircheis wrote:
After some investigation, it seems that ffmeg hash clang (which has gcc)
                                           ^^^^^^^^^^
as dependency in its chain.

I would consider it a bug, although not critical.

Do you mean "ffmpeg has clang as dependency"?
That's right thing. ffmpeg depends on clang indirectly as follows.

ffmpeg depends on libavfilter10.
libavfilter10 depends on libOpenCL1.
libOpenCL1 depends on libpocl2.
libpocl2 depends on clang.

pocl uses Clang as an OpenCL C frontend and LLVM for the kernel
compiler implementation, and as a portability layer.

Yes, that is what I meant with ffmpeg has (not hash, there was a typo sorry) clans as dependency in its chain (and not directly).

I do not know this libraries well enough to say if every dependency in the chain makes sense or not, but the chain as a whole surprised me. The final effect was having an audio player bringing two C compilers (clang depends on gcc) as dependency...

At least for one of my setups, having clang/gcc was problematic, and it needs to download a lot of data...

ffmpeg, as far as I've could see, on Debian does not seem to depend transitively on clang.


BTW, I looked into cmus.cygport of 2.11.0-2 and noticed that you
need to patch for configure to enable ffmpeg plugin as attached.

With ffmpeg plugin, many of audio formats get supported by cmus.

Oh, thanks, I'll give it a more detailed look later.
As I do not want to bring some compilers as dependencies, I will not apply it at the moment.

Furthermore, you do not need to add ffmpeg to "REQUIRES" because
the cmus package itself does not really depend on ffmpeg package
even though it depends libavcodec, libavformat, libavutil and
libswresample.

Yes, ffmpeg came as transitive dependency, I did not add it directly.
If I remember correctly, one chain looked more or less like

clang -> libpocl2 -> libOpenCL1 -> libavfilter10 -> ffmpeg -> libavcodec61 -> cmus

Maybe, you do not have to add any of packages to "REQUIRES"
because dependencies are added automatically by cygport in most
cases.

I was already told once that I probably can leave REQUIRES out.

Currently I'm using it for setting up a minimal test environment where I install only the packages listed in REQUIRES.
Can cygport give me that information if I do not write any REQUIRES?
Last time I asked the answer was no, and thus I decided to keep it to ease testing on my side.

Best

Federico

--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to