[FFmpeg-trac] #7102(avfilter:new): Compilation for MIPS with -msoft-float against musl libc fails

FFmpeg trac at avcodec.org
Thu Mar 22 20:16:28 EET 2018


#7102: Compilation for MIPS with -msoft-float against musl libc fails
-------------------------------------+-------------------------------------
             Reporter:  gbr          |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:  avfilter     |                  Version:  git-
             Keywords:  MIPS fenv.h  |  master
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------
 vf_drawtext.c cannot be compiled for MIPS with software floating-point
 support against musl libc.

 Build command: gcc -msoft-float ... -c vf_drawtext.c

 Error report:
 {{{
 libavfilter/vf_drawtext.c: In function 'func_eval_expr_int_format':
 libavfilter/vf_drawtext.c:947:29: error: 'FE_INVALID' undeclared (first
 use in this function); did you mean 'EINVAL'?
      if ((ret = fetestexcept(FE_INVALID|FE_OVERFLOW|FE_UNDERFLOW))) {
                              ^~~~~~~~~~
                              EINVAL
 libavfilter/vf_drawtext.c:947:29: note: each undeclared identifier is
 reported only once for each function it appears in
 libavfilter/vf_drawtext.c:947:40: error: 'FE_OVERFLOW' undeclared (first
 use in this function); did you mean 'EOVERFLOW'?
      if ((ret = fetestexcept(FE_INVALID|FE_OVERFLOW|FE_UNDERFLOW))) {
                                         ^~~~~~~~~~~
                                         EOVERFLOW
 libavfilter/vf_drawtext.c:947:52: error: 'FE_UNDERFLOW' undeclared (first
 use in this function); did you mean 'FE_OVERFLOW'?
      if ((ret = fetestexcept(FE_INVALID|FE_OVERFLOW|FE_UNDERFLOW))) {
                                                     ^~~~~~~~~~~~
                                                     FE_OVERFLOW
 }}}

 mips/bits/fenv.h contains the following excerpt:
 {{{
 #ifdef __mips_soft_float
 #define FE_ALL_EXCEPT 0
 #define FE_TONEAREST  0
 #else
 #define FE_INEXACT    4
 #define FE_UNDERFLOW  8
 #define FE_OVERFLOW   16
 #define FE_DIVBYZERO  32
 #define FE_INVALID    64

 #define FE_ALL_EXCEPT 124

 #define FE_TONEAREST  0
 #define FE_TOWARDZERO 1
 #define FE_UPWARD     2
 #define FE_DOWNWARD   3
 #endif
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/7102>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list