浏览代码

Include headers for optional libraries only when enabled.

Include the headers for libavfilter, libswscale and libpostproc when
they are enabled (and thus linked in).

Without this change, Sun Studio will fail to link FFmpeg since two
inline functions defined in avfilter.h will have undefined references
to non-inline libavfilter functions.

Originally committed as revision 15665 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diego Pettenò 17 年之前
父节点
当前提交
2cd39dbf16
共有 1 个文件被更改,包括 8 次插入0 次删除
  1. 8 0
      cmdutils.c

+ 8 - 0
cmdutils.c

@@ -24,12 +24,20 @@
 #include <errno.h>
 #include <math.h>
 
+/* Include only the enabled headers since some compilers (namely, Sun
+   Studio) will not omit unused inline functions and create undefined
+   references to libraries that are not being built. */
+
 #include "config.h"
 #include "libavformat/avformat.h"
+#ifdef CONFIG_AVFILTER
 #include "libavfilter/avfilter.h"
+#endif
 #include "libavdevice/avdevice.h"
 #include "libswscale/swscale.h"
+#ifdef CONFIG_POSTPROC
 #include "libpostproc/postprocess.h"
+#endif
 #include "libavutil/avstring.h"
 #include "libavcodec/opt.h"
 #include "cmdutils.h"