[Bug 297361] multimedia/mencoder: Fails to build with FFmpeg 9.0

[email protected] Sat, 08 Aug 2026 19:06:50 +0000
Newsgroups gmane.os.freebsd.devel.ports.bugs
Message-ID <[email protected]/bugzilla/>
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297361

            Bug ID: 297361
           Summary: multimedia/mencoder: Fails to build with FFmpeg 9.0
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: [email protected]
          Reporter: [email protected]
            Blocks: 297355
             Flags: maintainer-feedback?([email protected])
          Assignee: [email protected]

Poudriere, 15.1-RELEASE (amd64)

cc -MMD -MP -D_ISOC99_SOURCE -I. -Iffmpeg -O2 -pipe -march=znver4
-DLIBICONV_PLUG -Wno-incompatible-function-pointer-types
-fstack-protector-strong -fno-strict-aliasing -fno-asynchronous-unwind-tables
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/local/include
-I/usr/local/include -DLIBICONV_PLUG -fpie -DPIC -I/usr/local/include
-I/usr/local/include/p11-kit-1 -I/usr/local/include -I/usr/local/include
-I/usr/local/include/freetype2 -I/usr/local/include/libpng16
-I/usr/local/include -DZLIB_CONST -I/usr/local/include -I/usr/local/include -c
-o libmpdemux/muxer_lavf.o libmpdemux/muxer_lavf.c
cc -MMD -MP -D_ISOC99_SOURCE -I. -Iffmpeg -O2 -pipe -march=znver4
-DLIBICONV_PLUG -Wno-incompatible-function-pointer-types
-fstack-protector-strong -fno-strict-aliasing -fno-asynchronous-unwind-tables
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/local/include
-I/usr/local/include -DLIBICONV_PLUG -fpie -DPIC -I/usr/local/include
-I/usr/local/include/p11-kit-1 -I/usr/local/include -I/usr/local/include
-I/usr/local/include/freetype2 -I/usr/local/include/libpng16
-I/usr/local/include -DZLIB_CONST -I/usr/local/include -I/usr/local/include -c
-o libmpcodecs/ae_lame.o libmpcodecs/ae_lame.c
47 warnings generated.
In file included from libmpcodecs/ae_lavc.c:28:
In file included from ./libmpdemux/aviheader.h:28:
./libmpdemux/demuxer.h:292:11: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  292 |   dp->pts=MP_NOPTS_VALUE;
      |           ^~~~~~~~~~~~~~
./libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
./libmpdemux/demuxer.h:293:14: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  293 |   dp->endpts=MP_NOPTS_VALUE;
      |              ^~~~~~~~~~~~~~
./libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
./libmpdemux/demuxer.h:294:20: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  294 |   dp->stream_pts = MP_NOPTS_VALUE;
      |                    ^~~~~~~~~~~~~~
./libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
5 warnings generated.
In file included from libmpcodecs/ve_lavc.c:44:
./libmpdemux/demuxer.h:292:11: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  292 |   dp->pts=MP_NOPTS_VALUE;
      |           ^~~~~~~~~~~~~~
./libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
./libmpdemux/demuxer.h:293:14: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  293 |   dp->endpts=MP_NOPTS_VALUE;
      |              ^~~~~~~~~~~~~~
./libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
./libmpdemux/demuxer.h:294:20: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  294 |   dp->stream_pts = MP_NOPTS_VALUE;
      |                    ^~~~~~~~~~~~~~
./libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
libmpcodecs/ae_lavc.c:154:14: warning: assigning to 'AVCodec *' (aka 'struct
AVCodec *') from 'const AVCodec *' (aka 'const struct AVCodec *') discards
qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
  154 |         lavc_acodec = avcodec_find_encoder_by_name(lavc_param_acodec);
      |                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libmpcodecs/ae_lavc.c:180:19: error: no member named 'sample_fmts' in 'struct
AVCodec'
  180 |         if (lavc_acodec->sample_fmts) {
      |             ~~~~~~~~~~~  ^
libmpcodecs/ae_lavc.c:182:40: error: no member named 'sample_fmts' in 'struct
AVCodec'
  182 |                 lavc_actx->sample_fmt = lavc_acodec->sample_fmts[0]; //
fallback to first format
      |                                         ~~~~~~~~~~~  ^
libmpcodecs/ae_lavc.c:183:28: error: no member named 'sample_fmts' in 'struct
AVCodec'
  183 |                 for (fmts = lavc_acodec->sample_fmts; *fmts !=
AV_SAMPLE_FMT_NONE; fmts++) {
      |                             ~~~~~~~~~~~  ^
4 warnings and 3 errors generated.
In file included from libmpdemux/muxer_lavf.c:30:
In file included from libmpdemux/aviheader.h:28:
libmpdemux/demuxer.h:292:11: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  292 |   dp->pts=MP_NOPTS_VALUE;
      |           ^~~~~~~~~~~~~~
libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
libmpdemux/demuxer.h:293:14: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  293 |   dp->endpts=MP_NOPTS_VALUE;
      |              ^~~~~~~~~~~~~~
libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
libmpdemux/demuxer.h:294:20: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  294 |   dp->stream_pts = MP_NOPTS_VALUE;
      |                    ^~~~~~~~~~~~~~
libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
gmake: *** [Makefile:729: libmpcodecs/ae_lavc.o] Error 1
gmake: *** Waiting for unfinished jobs....
libmpcodecs/ve_lavc.c:550:24: warning: 'intra_dc_precision' is deprecated
[-Wdeprecated-declarations]
  550 |     lavc_venc_context->intra_dc_precision = lavc_param_dc_precision -
8;
      |                        ^
/usr/local/include/libavcodec/avcodec.h:985:5: note: 'intra_dc_precision' has
been explicitly marked deprecated here
  985 |     libmpdemux/muxer_lavf.cattribute_deprecated
      |     ^
/usr/local/include/libavutil/attributes.h:131:49: note: expanded from macro
'attribute_deprecated'
  131 | #    define attribute_deprecated __attribute__((deprecated))
      |                                                 ^
libmpcodecs/ve_lavc.c:688:46: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  688 |                 while(encode_frame(vf, NULL, MP_NOPTS_VALUE) > 0);
      |                                              ^~~~~~~~~~~~~~
./mp_global.h:27:29: note: expanded from macro 'MP_NOPTS_VALUE'
   27 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
libmpcodecs/ve_lavc.c:742:15: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  742 |     if(pts == MP_NOPTS_VALUE)
      |               ^~~~~~~~~~~~~~
./mp_global.h:27:29: note: expanded from macro 'MP_NOPTS_VALUE'
   27 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
libmpcodecs/ve_lavc.c:750:19: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  750 |         if(pts != MP_NOPTS_VALUE)
      |                   ^~~~~~~~~~~~~~
./mp_global.h:27:29: note: expanded from macro 'MP_NOPTS_VALUE'
   27 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
libmpcodecs/ve_lavc.c:753:23: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  753 |             pic->pts= MP_NOPTS_VALUE;
      |                       ^~~~~~~~~~~~~~
./mp_global.h:27:29: note: expanded from macro 'MP_NOPTS_VALUE'
   27 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
libmpcodecs/ve_lavc.c:775:17: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  775 |     dts = pts = MP_NOPTS_VALUE;
      |                 ^~~~~~~~~~~~~~
./mp_global.h:27:29: note: expanded from macro 'MP_NOPTS_VALUE'
   27 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
In file included from libmpcodecs/ae_lame.c:27:
In file included from ./libmpdemux/aviheader.h:28:
./libmpdemux/demuxer.h:292:11: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  292 |   dp->pts=MP_NOPTS_VALUE;
      |           ^~~~~~~~~~~~~~
./libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
./libmpdemux/demuxer.h:293:14: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  293 |   dp->endpts=MP_NOPTS_VALUE;
      |              ^~~~~~~~~~~~~~
./libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
./libmpdemux/demuxer.h:294:20: warning: shifting a negative signed value is
undefined [-Wshift-negative-value]
  294 |   dp->stream_pts = MP_NOPTS_VALUE;
      |                    ^~~~~~~~~~~~~~
./libmpdemux/demuxer.h:98:29: note: expanded from macro 'MP_NOPTS_VALUE'
   98 | #define MP_NOPTS_VALUE (-1LL<<63) //both int64_t and double should be
able to represent this exactly
      |                         ~~~~^
:83:44: warning: passing 'const uint8_t *' (aka 'const unsigned char *') to
parameter of type 'unsigned char *' discards qualifiers
[-Wincompatible-pointer-types-discards-qualifiers]
   83 |         return stream_write_buffer(muxer->stream, buf, size);
      |                                                   ^~~
./stream/stream.h:203:53: note: passing argument to parameter 'buf' here
  203 | int stream_write_buffer(stream_t *s, unsigned char *buf, int len);
      |                                                     ^
libmpdemux/muxer_lavf.c:257:2: warning: 'av_init_packet' is deprecated
[-Wdeprecated-declarations]
  257 |         av_init_packet(&pkt);
      |         ^
/usr/local/include/libavcodec/packet.h:725:1: note: 'av_init_packet' has been
explicitly marked deprecated here
  725 | attribute_deprecated
      | ^
/usr/local/include/libavutil/attributes.h:131:49: note: expanded from macro
'attribute_deprecated'
  131 | #    define attribute_deprecated __attribute__((deprecated))
      |                                                 ^
libmpdemux/muxer_lavf.c:296:2: warning: ignoring return value of function
declared with 'warn_unused_result' attribute [-Wunused-result]
  296 |         avformat_write_header(priv->oc, &opts);
      |         ^~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~
libmpdemux/muxer_lavf.c:358:7: warning: assigning to 'AVOutputFormat *' (aka
'struct AVOutputFormat *') from 'const AVOutputFormat *' (aka 'const struct
AVOutputFormat *') discards qualifiers
[-Wincompatible-pointer-types-discards-qualifiers]
  358 |                 fmt = av_guess_format(conf_format, NULL, NULL);
      |                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libmpdemux/muxer_lavf.c:360:7: warning: assigning to 'AVOutputFormat *' (aka
'struct AVOutputFormat *') from 'const AVOutputFormat *' (aka 'const struct
AVOutputFormat *') discards qualifiers
[-Wincompatible-pointer-types-discards-qualifiers]
  360 |                 fmt = av_guess_format(NULL, out_filename, NULL);
      |                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
8 warnings generated.
9 warnings generated.
3 warnings generated.
17 warnings generated.


Referenced Bugs:

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297355
[Bug 297355] multimedia/ffmpeg: Update to 9.0
-- 
You are receiving this mail because:
You are the assignee for the bug.