Ravenports generated: 22 Oct 2023 19:35
[ravenports.git] / bucket_03 / ffmpeg
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               ffmpeg
4 VERSION=                6.0
5 REVISION=               1
6 KEYWORDS=               multimedia audio net
7 VARIANTS=               standard
8 SDESC[standard]=        Play, record, convert, and stream audio and video
9 HOMEPAGE=               https://www.ffmpeg.org/
10 CONTACT=                nobody
11
12 DOWNLOAD_GROUPS=        main
13 SITES[main]=            http://ffmpeg.org/releases/
14 DISTFILE[1]=            ffmpeg-6.0.tar.xz:main
15 DF_INDEX=               1
16 SPKGS[standard]=        complete
17                         primary
18                         tools
19                         examples
20                         dev
21                         man
22                         docs
23
24 OPTIONS_AVAILABLE=      none
25 OPTIONS_STANDARD=       none
26
27 BUILD_DEPENDS=          libdrm:dev:standard
28                         libvpx:dev:standard
29                         gettext:solinks:standard
30                         gmp:static:standard
31                         gnutls:dev:standard
32                         harfbuzz:dev:standard
33                         nasm:primary:standard
34                         x265:dev:standard
35                         libass:dev:standard
36                         libva:dev:standard
37                         libgcrypt:dev:standard
38                         libvorbis:dev:standard
39                         WebP:dev:standard
40                         frei0r:dev:standard
41 BUILDRUN_DEPENDS=       gmp:shared:standard
42                         libass:primary:standard
43                         frei0r:primary:standard
44                         fribidi:single:standard
45                         libgcrypt:primary:standard
46                         gnutls:primary:standard
47                         rtmpdump:library:standard
48                         libtheora:single:standard
49                         libva:primary:standard
50                         libvdpau:single:standard
51                         libvorbis:primary:standard
52                         libvpx:primary:standard
53                         libdrm:primary:standard
54                         WebP:primary:standard
55                         x264:library:standard
56                         x265:primary:standard
57                         xvid:single:standard
58 EXRUN[tools]=           ffmpeg:primary:standard
59
60 USES=                   cpe gmake iconv zlib perl:build fontconfig pkgconfig
61                         gettext:build shebangfix
62 GNOME_COMPONENTS=       libxml2 librsvg
63 SDL_COMPONENTS=         sdl2
64
65 DISTNAME=               ffmpeg-6.0
66
67 LICENSE=                LGPL3+:primary GPLv3+:primary
68 LICENSE_TERMS=          primary:{{WRKSRC}}/LICENSE.md
69 LICENSE_FILE=           LGPL3+:{{WRKSRC}}/COPYING.LGPLv3
70                         GPLv3+:{{WRKSRC}}/COPYING.GPLv3
71 LICENSE_SCHEME=         multi
72
73 FPC_EQUIVALENT=         multimedia/ffmpeg
74 SHEBANG_ADD_SH=         ffbuild/libversion.sh
75 SHEBANG_FILES=          doc/texi2pod.pl
76
77 MUST_CONFIGURE=         yes
78 CONFIGURE_ARGS=         --cc="{{CC}}"
79                         --prefix="{{PREFIX}}"
80                         --mandir="{{MANPREFIX}}/man"
81                         --datadir="{{PREFIX}}/share/ffmpeg"
82                         --pkgconfigdir="{{PREFIX}}/lib/pkgconfig"
83                         --enable-shared
84                         --enable-pic
85                         --enable-gpl
86                         --enable-version3
87                         --enable-postproc
88                         --enable-avfilter
89                         --enable-pthreads
90                         --disable-alsa
91                         --disable-libopencore-amrnb
92                         --disable-libopencore-amrwb
93                         --disable-libbs2b
94                         --disable-libcaca
95                         --disable-libcdio
96                         --disable-libcelt
97                         --disable-chromaprint
98                         --disable-libdc1394
99                         --disable-debug
100                         --disable-htmlpages
101                         --disable-libfdk-aac
102                         --disable-libflite
103                         --disable-libgme
104                         --disable-libgsm
105                         --disable-libilbc
106                         --disable-libkvazaar
107                         --disable-ladspa
108                         --disable-libmp3lame
109                         --disable-libbluray
110                         --disable-libmodplug
111                         --disable-openal
112                         --disable-opencl
113                         --disable-opengl
114                         --disable-libopenh264
115                         --disable-libopenjpeg
116                         --disable-openssl
117                         --disable-libopus
118                         --disable-libpulse
119                         --disable-librubberband
120                         --disable-libsmbclient
121                         --disable-libsnappy
122                         --disable-sndio
123                         --disable-libsoxr
124                         --disable-libspeex
125                         --disable-libssh
126                         --disable-libtesseract
127                         --disable-libtwolame
128                         --disable-libvo-amrwbenc
129                         --disable-libvidstab
130                         --disable-libxcb
131                         --disable-outdev=xv
132                         --disable-libzimg
133                         --disable-libzmq
134                         --disable-libzvbi
135                         --disable-libmysofa
136                         --disable-libv4l2
137                         --disable-indev=v4l2
138                         --disable-outdev=v4l2
139                         --enable-libass
140                         --enable-fontconfig
141                         --enable-libfreetype
142                         --enable-frei0r
143                         --enable-libfribidi
144                         --enable-gcrypt
145                         --enable-gnutls
146                         --enable-gmp
147                         --enable-iconv
148                         --enable-optimizations
149                         --enable-runtime-cpudetect
150                         --enable-librtmp
151                         --enable-sdl2
152                         --enable-libtheora
153                         --enable-vaapi
154                         --enable-vdpau
155                         --enable-libvorbis
156                         --enable-libvpx
157                         --enable-libwebp
158                         --enable-libx264
159                         --enable-libx265
160                         --enable-libxvid
161                         --enable-libdrm
162                         --enable-librsvg
163                         --enable-libxml2
164
165 INSTALL_TARGET=         install-progs install-doc install-data install-libs
166                         install-headers install-examples
167 PLIST_SUB=              AVCODEC_SO=60.3.100
168                         AVCODEC_MAJOR=60
169                         AVDEVICE_SO=60.1.100
170                         AVDEVICE_MAJOR=60
171                         AVFILTER_SO=9.3.100
172                         AVFILTER_MAJOR=9
173                         AVFORMAT_SO=60.3.100
174                         AVFORMAT_MAJOR=60
175                         AVUTIL_SO=58.2.100
176                         AVUTIL_MAJOR=58
177                         POSTPROC_SO=57.1.100
178                         POSTPROC_MAJOR=57
179                         SWRESAMPLE_SO=4.10.100
180                         SWRESAMPLE_MAJOR=4
181                         SCALE_SO=7.1.100
182                         SCALE_MAJOR=7
183
184 post-install:
185         @${MKDIR} ${STAGEDIR}${STD_DOCDIR}
186 .for DF in CREDITS LICENSE.md MAINTAINERS README.md RELEASE_NOTES
187         ${INSTALL_DATA} ${WRKSRC}/${DF} ${STAGEDIR}${STD_DOCDIR}
188 .endfor
189         ${INSTALL_DATA} ${WRKSRC}/doc/APIchanges ${STAGEDIR}${STD_DOCDIR}
190         ${INSTALL_DATA} ${WRKSRC}/doc/*.txt ${STAGEDIR}${STD_DOCDIR}
191
192 post-patch-sunos:
193         ${REINPLACE_CMD} -e '/^enabled libxvid/ s/$$/ -lrt/' \
194                 -e '/append SHFLAGS.*version_script/d' \
195                 ${WRKSRC}/configure
196
197 [FILE:843:descriptions/desc.primary]
198 FFmpeg is the leading multimedia framework, able to decode, encode,
199 transcode, mux, demux, stream, filter and play pretty much anything that
200 humans and machines have created. It supports the most obscure ancient
201 formats up to the cutting edge. No matter if they were designed by some
202 standards committee, the community or a corporation. It is also highly
203 portable: FFmpeg compiles, runs, and passes our testing infrastructure
204 FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc.
205 under a wide variety of build environments, machine architectures, and
206 configurations.
207
208 It contains libavcodec, libavutil, libavformat, libavfilter, libavdevice,
209 libswscale and libswresample which can be used by applications. As well
210 as ffmpeg, ffserver, ffplay and ffprobe which can be used by end users
211 for transcoding, streaming and playing.
212
213
214 [FILE:40:descriptions/desc.tools]
215 This package contains the ffmeg6 tools.
216
217
218 [FILE:96:distinfo]
219 57be87c22d9b49c112b6d24bc67d42508660e6b718b3db89c44e47e289137082     10234012 ffmpeg-6.0.tar.xz
220
221
222 [FILE:529:manifests/plist.primary]
223 lib/
224  libavcodec.so.%%AVCODEC_MAJOR%%
225  libavcodec.so.%%AVCODEC_SO%%
226  libavdevice.so.%%AVDEVICE_MAJOR%%
227  libavdevice.so.%%AVDEVICE_SO%%
228  libavfilter.so.%%AVFILTER_MAJOR%%
229  libavfilter.so.%%AVFILTER_SO%%
230  libavformat.so.%%AVFORMAT_MAJOR%%
231  libavformat.so.%%AVFORMAT_SO%%
232  libavutil.so.%%AVUTIL_MAJOR%%
233  libavutil.so.%%AVUTIL_SO%%
234  libpostproc.so.%%POSTPROC_MAJOR%%
235  libpostproc.so.%%POSTPROC_SO%%
236  libswresample.so.%%SWRESAMPLE_MAJOR%%
237  libswresample.so.%%SWRESAMPLE_SO%%
238  libswscale.so.%%SCALE_MAJOR%%
239  libswscale.so.%%SCALE_SO%%
240
241
242 [FILE:30:manifests/plist.tools]
243 bin/
244  ffmpeg
245  ffplay
246  ffprobe
247
248
249 [FILE:437:manifests/plist.examples]
250 share/ffmpeg/examples/
251  Makefile
252  README
253  avio_http_serve_files.c
254  avio_list_dir.c
255  avio_read_callback.c
256  decode_audio.c
257  decode_filter_audio.c
258  decode_filter_video.c
259  decode_video.c
260  demux_decode.c
261  encode_audio.c
262  encode_video.c
263  extract_mvs.c
264  filter_audio.c
265  hw_decode.c
266  mux.c
267  qsv_decode.c
268  qsv_transcode.c
269  remux.c
270  resample_audio.c
271  scale_video.c
272  show_metadata.c
273  transcode.c
274  transcode_aac.c
275  vaapi_encode.c
276  vaapi_transcode.c
277
278
279 [FILE:2446:manifests/plist.dev]
280 include/libavcodec/
281  ac3_parser.h
282  adts_parser.h
283  avcodec.h
284  avdct.h
285  avfft.h
286  bsf.h
287  codec.h
288  codec_desc.h
289  codec_id.h
290  codec_par.h
291  d3d11va.h
292  defs.h
293  dirac.h
294  dv_profile.h
295  dxva2.h
296  jni.h
297  mediacodec.h
298  packet.h
299  qsv.h
300  vdpau.h
301  version.h
302  version_major.h
303  videotoolbox.h
304  vorbis_parser.h
305  xvmc.h
306 include/libavdevice/
307  avdevice.h
308  version.h
309  version_major.h
310 include/libavfilter/
311  avfilter.h
312  buffersink.h
313  buffersrc.h
314  version.h
315  version_major.h
316 include/libavformat/
317  avformat.h
318  avio.h
319  version.h
320  version_major.h
321 include/libavutil/
322  adler32.h
323  aes.h
324  aes_ctr.h
325  ambient_viewing_environment.h
326  attributes.h
327  audio_fifo.h
328  avassert.h
329  avconfig.h
330  avstring.h
331  avutil.h
332  base64.h
333  blowfish.h
334  bprint.h
335  bswap.h
336  buffer.h
337  camellia.h
338  cast5.h
339  channel_layout.h
340  common.h
341  cpu.h
342  crc.h
343  csp.h
344  des.h
345  detection_bbox.h
346  dict.h
347  display.h
348  dovi_meta.h
349  downmix_info.h
350  encryption_info.h
351  error.h
352  eval.h
353  ffversion.h
354  fifo.h
355  file.h
356  film_grain_params.h
357  frame.h
358  hash.h
359  hdr_dynamic_metadata.h
360  hdr_dynamic_vivid_metadata.h
361  hmac.h
362  hwcontext.h
363  hwcontext_cuda.h
364  hwcontext_d3d11va.h
365  hwcontext_drm.h
366  hwcontext_dxva2.h
367  hwcontext_mediacodec.h
368  hwcontext_opencl.h
369  hwcontext_qsv.h
370  hwcontext_vaapi.h
371  hwcontext_vdpau.h
372  hwcontext_videotoolbox.h
373  hwcontext_vulkan.h
374  imgutils.h
375  intfloat.h
376  intreadwrite.h
377  lfg.h
378  log.h
379  lzo.h
380  macros.h
381  mastering_display_metadata.h
382  mathematics.h
383  md5.h
384  mem.h
385  motion_vector.h
386  murmur3.h
387  opt.h
388  parseutils.h
389  pixdesc.h
390  pixelutils.h
391  pixfmt.h
392  random_seed.h
393  rational.h
394  rc4.h
395  replaygain.h
396  ripemd.h
397  samplefmt.h
398  sha.h
399  sha512.h
400  spherical.h
401  stereo3d.h
402  tea.h
403  threadmessage.h
404  time.h
405  timecode.h
406  timestamp.h
407  tree.h
408  twofish.h
409  tx.h
410  uuid.h
411  version.h
412  video_enc_params.h
413  xtea.h
414 include/libpostproc/
415  postprocess.h
416  version.h
417  version_major.h
418 include/libswresample/
419  swresample.h
420  version.h
421  version_major.h
422 include/libswscale/
423  swscale.h
424  version.h
425  version_major.h
426 lib/
427  libavcodec.a
428  libavcodec.so
429  libavdevice.a
430  libavdevice.so
431  libavfilter.a
432  libavfilter.so
433  libavformat.a
434  libavformat.so
435  libavutil.a
436  libavutil.so
437  libpostproc.a
438  libpostproc.so
439  libswresample.a
440  libswresample.so
441  libswscale.a
442  libswscale.so
443 lib/pkgconfig/
444  libavcodec.pc
445  libavdevice.pc
446  libavfilter.pc
447  libavformat.pc
448  libavutil.pc
449  libpostproc.pc
450  libswresample.pc
451  libswscale.pc
452 share/ffmpeg/
453  ffprobe.xsd
454  libvpx-1080p.ffpreset
455  libvpx-1080p50_60.ffpreset
456  libvpx-360p.ffpreset
457  libvpx-720p.ffpreset
458  libvpx-720p50_60.ffpreset
459
460
461 [FILE:447:manifests/plist.man]
462 share/man/man1/
463  ffmpeg-all.1.gz
464  ffmpeg-bitstream-filters.1.gz
465  ffmpeg-codecs.1.gz
466  ffmpeg-devices.1.gz
467  ffmpeg-filters.1.gz
468  ffmpeg-formats.1.gz
469  ffmpeg-protocols.1.gz
470  ffmpeg-resampler.1.gz
471  ffmpeg-scaler.1.gz
472  ffmpeg-utils.1.gz
473  ffmpeg.1.gz
474  ffplay-all.1.gz
475  ffplay.1.gz
476  ffprobe-all.1.gz
477  ffprobe.1.gz
478 share/man/man3/
479  libavcodec.3.gz
480  libavdevice.3.gz
481  libavfilter.3.gz
482  libavformat.3.gz
483  libavutil.3.gz
484  libswresample.3.gz
485  libswscale.3.gz
486
487
488 [FILE:2032:patches/patch-assy-with-bu241]
489 From effadce6c756247ea8bae32dc13bb3e6f464f0eb Mon Sep 17 00:00:00 2001
490 From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
491 Date: Sun, 16 Jul 2023 18:18:02 +0300
492 Subject: [PATCH] avcodec/x86/mathops: clip constants used with shift
493  instructions within inline assembly
494
495 Fixes assembling with binutil as >= 2.41
496
497 Signed-off-by: James Almer <jamrial@gmail.com>
498 ---
499  libavcodec/x86/mathops.h | 26 +++++++++++++++++++++++---
500  1 file changed, 23 insertions(+), 3 deletions(-)
501
502 --- libavcodec/x86/mathops.h.orig
503 +++ libavcodec/x86/mathops.h
504 @@ -35,12 +35,20 @@
505  static av_always_inline av_const int MULL(int a, int b, unsigned shift)
506  {
507      int rt, dummy;
508 +    if (__builtin_constant_p(shift))
509      __asm__ (
510          "imull %3               \n\t"
511          "shrdl %4, %%edx, %%eax \n\t"
512          :"=a"(rt), "=d"(dummy)
513 -        :"a"(a), "rm"(b), "ci"((uint8_t)shift)
514 +        :"a"(a), "rm"(b), "i"(shift & 0x1F)
515      );
516 +    else
517 +        __asm__ (
518 +            "imull %3               \n\t"
519 +            "shrdl %4, %%edx, %%eax \n\t"
520 +            :"=a"(rt), "=d"(dummy)
521 +            :"a"(a), "rm"(b), "c"((uint8_t)shift)
522 +        );
523      return rt;
524  }
525  
526 @@ -113,19 +121,31 @@ __asm__ volatile(\
527  // avoid +32 for shift optimization (gcc should do that ...)
528  #define NEG_SSR32 NEG_SSR32
529  static inline  int32_t NEG_SSR32( int32_t a, int8_t s){
530 +    if (__builtin_constant_p(s))
531      __asm__ ("sarl %1, %0\n\t"
532           : "+r" (a)
533 -         : "ic" ((uint8_t)(-s))
534 +         : "i" (-s & 0x1F)
535      );
536 +    else
537 +        __asm__ ("sarl %1, %0\n\t"
538 +               : "+r" (a)
539 +               : "c" ((uint8_t)(-s))
540 +        );
541      return a;
542  }
543  
544  #define NEG_USR32 NEG_USR32
545  static inline uint32_t NEG_USR32(uint32_t a, int8_t s){
546 +    if (__builtin_constant_p(s))
547      __asm__ ("shrl %1, %0\n\t"
548           : "+r" (a)
549 -         : "ic" ((uint8_t)(-s))
550 +         : "i" (-s & 0x1F)
551      );
552 +    else
553 +        __asm__ ("shrl %1, %0\n\t"
554 +               : "+r" (a)
555 +               : "c" ((uint8_t)(-s))
556 +        );
557      return a;
558  }
559  
560
561
562 [FILE:257:patches/patch-configure]
563 --- configure.orig      2023-02-27 20:43:45 UTC
564 +++ configure
565 @@ -5536,7 +5536,7 @@ case $target_os in
566      dragonfly)
567          disable symver
568          ;;
569 -    freebsd)
570 +    freebsd|midnightbsd)
571          ;;
572      bsd/os)
573          add_extralibs -lpoll -lgnugetopt
574
575
576 [FILE:287:patches/patch-doc_Makefile]
577 --- doc/Makefile.orig   2023-02-27 20:43:45 UTC
578 +++ doc/Makefile
579 @@ -122,7 +122,7 @@ install-html: $(HTMLPAGES)
580  endif
581  
582  ifdef CONFIG_MANPAGES
583 -install-progs-$(CONFIG_DOC): install-man
584 +#install-progs-$(CONFIG_DOC): install-man
585  
586  install-man: $(MANPAGES)
587         $(Q)mkdir -p "$(MANDIR)/man1"
588
589
590 [FILE:1819:patches/patch-libavformat_rtsp.c]
591 --- libavformat/rtsp.c.orig     2023-02-27 20:43:45 UTC
592 +++ libavformat/rtsp.c
593 @@ -1674,7 +1674,12 @@ int ff_rtsp_make_setup_request(AVFormatC
594              }
595              if (ttl > 0)
596                  snprintf(optbuf, sizeof(optbuf), "?ttl=%d", ttl);
597 -            getnameinfo((struct sockaddr*) &addr, sizeof(addr),
598 +            getnameinfo((struct sockaddr*) &addr,
599 +#if HAVE_STRUCT_SOCKADDR_SA_LEN
600 +                        ((struct sockaddr*) &addr)->sa_len,
601 +#else
602 +                        sizeof(addr),
603 +#endif
604                          namebuf, sizeof(namebuf), NULL, 0, NI_NUMERICHOST);
605              ff_url_join(url, sizeof(url), "rtp", NULL, namebuf,
606                          port, "%s", optbuf);
607 @@ -1908,8 +1913,13 @@ redirect:
608          goto fail;
609      }
610      if (!getpeername(tcp_fd, (struct sockaddr*) &peer, &peer_len)) {
611 -        getnameinfo((struct sockaddr*) &peer, peer_len, host, sizeof(host),
612 -                    NULL, 0, NI_NUMERICHOST);
613 +        getnameinfo((struct sockaddr*) &peer,
614 +#if HAVE_STRUCT_SOCKADDR_SA_LEN
615 +                    ((struct sockaddr*) &peer)->sa_len,
616 +#else
617 +                    peer_len,
618 +#endif
619 +                    host, sizeof(host), NULL, 0, NI_NUMERICHOST);
620      }
621  
622      /* request options supported by the server; this also detects server
623 @@ -2424,7 +2434,11 @@ static int sdp_read_header(AVFormatConte
624              const char *p;
625  
626              err = getnameinfo((struct sockaddr*) &rtsp_st->sdp_ip,
627 +#if HAVE_STRUCT_SOCKADDR_SA_LEN
628 +                              ((struct sockaddr*) &rtsp_st->sdp_ip)->sa_len,
629 +#else
630                                sizeof(rtsp_st->sdp_ip),
631 +#endif
632                                namebuf, sizeof(namebuf), NULL, 0, NI_NUMERICHOST);
633              if (err) {
634                  av_log(s, AV_LOG_ERROR, "getnameinfo: %s\n", gai_strerror(err));
635
636
637 [FILE:338:patches/patch-libavutil_common.h]
638 --- libavutil/common.h.orig     2023-02-27 20:43:45 UTC
639 +++ libavutil/common.h
640 @@ -42,6 +42,10 @@
641  #include "attributes.h"
642  #include "macros.h"
643  
644 +#ifndef        UINT64_C
645 +#define        UINT64_C(c)     (c ## UL)
646 +#endif
647 +
648  //rounded division & shift
649  #define RSHIFT(a,b) ((a) > 0 ? ((a) + ((1<<(b))>>1))>>(b) : ((a) + ((1<<(b))>>1)-1)>>(b))
650  /* assume b>0 */
651