configure: Use a separate config_components.h header for $ALL_COMPONENTS

This avoids unnecessary rebuilds of most source files if only the
list of enabled components has changed, but not the other properties
of the build, set in config.h.

Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
Martin Storsjö 2022-02-23 14:56:49 +02:00
parent f3a0e2ee2b
commit a78f136f3f
243 changed files with 459 additions and 2 deletions

17
configure vendored
View File

@ -7791,17 +7791,30 @@ print_config ARCH_ "$config_files" $ARCH_LIST
print_config HAVE_ "$config_files" $HAVE_LIST
print_config CONFIG_ "$config_files" $CONFIG_LIST \
$CONFIG_EXTRA \
$ALL_COMPONENTS \
echo "#endif /* FFMPEG_CONFIG_H */" >> $TMPH
echo "endif # FFMPEG_CONFIG_MAK" >> ffbuild/config.mak
# Do not overwrite an unchanged config.h to avoid superfluous rebuilds.
cp_if_changed $TMPH config.h
touch ffbuild/.config
# Copy config.asm before printing ALL_COMPONENTS; that's not needed in assembly.
enabled x86asm && cp_if_changed $TMPASM config.asm
# Reopen a new TMPH for config_components.h.
cat > $TMPH <<EOF
/* Automatically generated by configure - do not modify! */
#ifndef FFMPEG_CONFIG_COMPONENTS_H
#define FFMPEG_CONFIG_COMPONENTS_H
EOF
print_config CONFIG_ "$config_files" $ALL_COMPONENTS
echo "#endif /* FFMPEG_CONFIG_COMPONENTS_H */" >> $TMPH
echo "endif # FFMPEG_CONFIG_MAK" >> ffbuild/config.mak
cp_if_changed $TMPH config_components.h
cat > $TMPH <<EOF
/* Generated by ffmpeg configure */
#ifndef AVUTIL_AVCONFIG_H

View File

@ -24,6 +24,7 @@
*/
#include "config.h"
#include "config_components.h"
#include <inttypes.h>
#include <math.h>
#include <limits.h>

View File

@ -37,6 +37,8 @@
* http://aminet.net/mods/smpl/
*/
#include "config_components.h"
#include "libavutil/avassert.h"
#include "avcodec.h"
#include "internal.h"

View File

@ -24,6 +24,8 @@
* a64 video encoder - multicolor modes
*/
#include "config_components.h"
#include "a64colors.h"
#include "a64tables.h"
#include "elbg.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/channel_layout.h"
#include "libavutil/common.h"
#include "parser.h"

View File

@ -28,6 +28,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "libavutil/mem_internal.h"
#include "libavutil/thread.h"
#include "aac.h"

View File

@ -19,6 +19,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/aarch64/asm.S"
/* chroma_mc8(uint8_t *dst, uint8_t *src, ptrdiff_t stride, int h, int x, int y) */

View File

@ -21,6 +21,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "libavutil/channel_layout.h"
#include "parser.h"

View File

@ -24,6 +24,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include <stdio.h>
#include <stddef.h>
#include <math.h>

View File

@ -27,6 +27,9 @@
/**
* Upmix delay samples from stereo to original channel layout.
*/
#include "config_components.h"
#include "ac3dec.h"
#include "eac3dec.c"
#include "ac3dec.c"

View File

@ -38,6 +38,7 @@
#include "libavutil/opt.h"
#include "libavutil/thread.h"
#include "avcodec.h"
#include "config_components.h"
#include "encode.h"
#include "internal.h"
#include "me_cmp.h"

View File

@ -26,6 +26,8 @@
* AC-3 encoder float/fixed template
*/
#include "config_components.h"
#include <stdint.h>
#include "libavutil/attributes.h"

View File

@ -34,6 +34,9 @@
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "avcodec.h"
#include "get_bits.h"
#include "bytestream.h"

View File

@ -22,6 +22,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/opt.h"
#include "avcodec.h"

View File

@ -28,6 +28,7 @@
#include <string.h>
#include "config.h"
#include "config_components.h"
#include "libavutil/thread.h"
#include "codec.h"
#include "codec_id.h"

View File

@ -17,6 +17,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "libavutil/avassert.h"
#include "libavutil/imgutils.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/channel_layout.h"
#include "aptx.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/channel_layout.h"
#include "aptx.h"
#include "encode.h"

View File

@ -21,6 +21,7 @@
#include "libavutil/attributes.h"
#include "libavcodec/flacdsp.h"
#include "config.h"
#include "config_components.h"
void ff_flac_lpc_16_arm(int32_t *samples, const int coeffs[32], int order,
int qlevel, int len);

View File

@ -18,6 +18,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/arm/asm.S"
/* chroma_mc8(uint8_t *dst, uint8_t *src, ptrdiff_t stride, int h, int x, int y) */

View File

@ -23,6 +23,7 @@
#include "avcodec.h"
#include "ass.h"
#include "config_components.h"
#include "internal.h"
#include "libavutil/internal.h"
#include "libavutil/mem.h"

View File

@ -19,6 +19,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include <string.h>
#include "avcodec.h"

View File

@ -30,6 +30,7 @@
#include "asv.h"
#include "avcodec.h"
#include "blockdsp.h"
#include "config_components.h"
#include "idctdsp.h"
#include "internal.h"
#include "mpeg12data.h"

View File

@ -23,6 +23,8 @@
* ASUS V1/V2 encoder.
*/
#include "config_components.h"
#include "libavutil/attributes.h"
#include "libavutil/mem.h"

View File

@ -23,6 +23,7 @@
#include <AudioToolbox/AudioToolbox.h>
#include "config.h"
#include "config_components.h"
#include "avcodec.h"
#include "ac3_parser_internal.h"
#include "bytestream.h"

View File

@ -18,6 +18,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/film_grain_params.h"
#include "libavutil/pixdesc.h"
#include "libavutil/opt.h"

View File

@ -28,6 +28,8 @@
* http://wiki.multimedia.cx/index.php?title=Bink_Audio
*/
#include "config_components.h"
#include "libavutil/channel_layout.h"
#include "libavutil/intfloat.h"
#include "libavutil/mem_internal.h"

View File

@ -28,6 +28,8 @@
* iCEDraw File decoder
*/
#include "config_components.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/xga_font_data.h"
#include "avcodec.h"

View File

@ -19,6 +19,7 @@
#include <string.h>
#include "config.h"
#include "config_components.h"
#include "libavutil/avassert.h"
#include "libavutil/log.h"

View File

@ -45,6 +45,8 @@
* Includes
****************************************************************************/
#include "config_components.h"
#define _XOPEN_SOURCE 600
#include <inttypes.h>
#include <stdio.h>

View File

@ -19,6 +19,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "compat/cuda/dynlink_loader.h"
#include "libavutil/buffer.h"

View File

@ -28,6 +28,8 @@
* Creative YUV (CYUV) Video Decoder.
*/
#include "config_components.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/avassert.h"
#include "libavutil/pixdesc.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/avassert.h"
#include "dxva2_internal.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/avassert.h"
#include "dxva2_internal.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/log.h"
#include "dxva2_internal.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "dxva2_internal.h"
#include "mpegutils.h"
#include "mpegvideodec.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/avassert.h"
#include "libavutil/pixdesc.h"

View File

@ -33,6 +33,8 @@
* downloaded from http://www.adobe.com/devnet/swf.html.
*/
#include "config_components.h"
#include <stdio.h>
#include <stdlib.h>
#include <zlib.h>

View File

@ -21,6 +21,9 @@
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include <limits.h>
#include "libavutil/channel_layout.h"

View File

@ -24,6 +24,8 @@
* GSM decoder
*/
#include "config_components.h"
#include "libavutil/channel_layout.h"
#include "avcodec.h"
#include "get_bits.h"

View File

@ -27,6 +27,8 @@
#define UNCHECKED_BITSTREAM_READER 1
#include "config_components.h"
#include "avcodec.h"
#include "error_resilience.h"
#include "flvdec.h"

View File

@ -25,6 +25,8 @@
* @author Michael Niedermayer <michaelni@gmx.at>
*/
#include "config_components.h"
#include "libavutil/avassert.h"
#include "libavutil/display.h"
#include "libavutil/film_grain_params.h"

View File

@ -27,6 +27,8 @@
#define UNCHECKED_BITSTREAM_READER 1
#include "config_components.h"
#include "libavutil/avassert.h"
#include "libavutil/imgutils.h"
#include "libavutil/opt.h"

View File

@ -23,6 +23,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/attributes.h"
#include "libavutil/common.h"
#include "libavutil/display.h"

View File

@ -32,6 +32,8 @@
#define UNCHECKED_BITSTREAM_READER 1
#include "config_components.h"
#include "avcodec.h"
#include "get_bits.h"
#include "huffyuv.h"

View File

@ -28,6 +28,8 @@
* huffyuv encoder
*/
#include "config_components.h"
#include "avcodec.h"
#include "encode.h"
#include "huffyuv.h"

View File

@ -17,6 +17,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "libavutil/attributes.h"
#include "libavutil/common.h"
#include "avcodec.h"

View File

@ -26,6 +26,8 @@
* IFF ACBM/ANIM/DEEP/ILBM/PBM/RGB8/RGBN bitmap decoder
*/
#include "config_components.h"
#include <stdint.h>
#include "libavutil/imgutils.h"

View File

@ -29,6 +29,7 @@
* Only mono is supported.
*/
#include "config_components.h"
#include <math.h>
#include <stddef.h>

View File

@ -29,6 +29,8 @@
#define UNCHECKED_BITSTREAM_READER 1
#include "config_components.h"
#include "libavutil/attributes.h"
#include "libavutil/imgutils.h"
#include "libavutil/internal.h"

View File

@ -27,6 +27,8 @@
* H.263 bitstream encoder.
*/
#include "config_components.h"
#include <limits.h>
#include "libavutil/attributes.h"

View File

@ -37,6 +37,8 @@
* Supports: BGR24 (RGB 24bpp)
*/
#include "config_components.h"
#include <stdio.h>
#include <stdlib.h>

View File

@ -28,6 +28,7 @@
// The idiosyncrasies of GSM-in-WAV are explained at http://kbs.cs.tu-berlin.de/~jutta/toast.html
#include "config.h"
#include "config_components.h"
#if HAVE_GSM_H
#include <gsm.h>
#else

View File

@ -28,6 +28,7 @@
// The idiosyncrasies of GSM-in-WAV are explained at http://kbs.cs.tu-berlin.de/~jutta/toast.html
#include "config.h"
#include "config_components.h"
#if HAVE_GSM_H
#include <gsm.h>
#else

View File

@ -19,6 +19,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include <inttypes.h>
#include "libavutil/avstring.h"

View File

@ -21,6 +21,7 @@
#include <vpx/vpx_codec.h>
#include "libvpx.h"
#include "config.h"
#include "config_components.h"
#if CONFIG_LIBVPX_VP9_ENCODER
#include <vpx/vpx_encoder.h>

View File

@ -23,6 +23,8 @@
* VP8/9 decoder support via libvpx
*/
#include "config_components.h"
#define VPX_CODEC_DISABLE_COMPAT 1
#include <vpx/vpx_decoder.h>
#include <vpx/vpx_frame_buffer.h>

View File

@ -23,6 +23,8 @@
* VP8/9 encoder support via libvpx
*/
#include "config_components.h"
#define VPX_DISABLE_CTRL_TYPECHECKS 1
#define VPX_CODEC_DISABLE_COMPAT 1
#include <vpx/vpx_encoder.h>

View File

@ -19,6 +19,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/eval.h"
#include "libavutil/internal.h"
#include "libavutil/opt.h"

View File

@ -29,6 +29,7 @@
#include "me_cmp.h"
#include "mpegvideoenc.h"
#include "config.h"
#include "config_components.h"
/* (i - 256) * (i - 256) */
const uint32_t ff_square_tab[512] = {

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include <stdint.h>
#include <string.h>

View File

@ -20,6 +20,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "metasound_data.h"
#if CONFIG_METASOUND_DECODER

View File

@ -30,6 +30,8 @@
* MJPEG decoder.
*/
#include "config_components.h"
#include "libavutil/display.h"
#include "libavutil/imgutils.h"
#include "libavutil/avassert.h"

View File

@ -30,6 +30,8 @@
* MJPEG encoder.
*/
#include "config_components.h"
#include "libavutil/pixdesc.h"
#include "avcodec.h"

View File

@ -24,6 +24,8 @@
* MLP decoder
*/
#include "config_components.h"
#include <stdint.h>
#include "avcodec.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "avcodec.h"
#include "encode.h"
#include "internal.h"

View File

@ -25,6 +25,8 @@
* MPEG-1/2 decoder
*/
#include "config_components.h"
#define UNCHECKED_BITSTREAM_READER 1
#include <inttypes.h>

View File

@ -28,6 +28,7 @@
#include <stdint.h>
#include "config.h"
#include "config_components.h"
#include "libavutil/attributes.h"
#include "libavutil/avassert.h"
#include "libavutil/log.h"

View File

@ -22,6 +22,8 @@
#define UNCHECKED_BITSTREAM_READER 1
#include "config_components.h"
#include "libavutil/internal.h"
#include "libavutil/opt.h"
#include "libavutil/thread.h"

View File

@ -19,6 +19,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "libavutil/samplefmt.h"
#define USE_FLOATS 0

View File

@ -20,6 +20,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "libavutil/samplefmt.h"
#define USE_FLOATS 1

View File

@ -24,6 +24,8 @@
* MPEG Audio decoder
*/
#include "config_components.h"
#include "libavutil/attributes.h"
#include "libavutil/avassert.h"
#include "libavutil/channel_layout.h"

View File

@ -27,6 +27,8 @@
* The simplest mpeg encoder (well, it was the simplest!).
*/
#include "config_components.h"
#include "libavutil/attributes.h"
#include "libavutil/avassert.h"
#include "libavutil/imgutils.h"

View File

@ -31,6 +31,8 @@
* The simplest mpeg encoder (well, it was the simplest!).
*/
#include "config_components.h"
#include <stdint.h>
#include "libavutil/internal.h"

View File

@ -21,6 +21,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/avassert.h"
#include "libavutil/internal.h"
#include "libavutil/mem_internal.h"

View File

@ -27,6 +27,8 @@
* MSMPEG4 backend for encoder and decoder
*/
#include "config_components.h"
#include "libavutil/thread.h"
#include "avcodec.h"

View File

@ -22,6 +22,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/thread.h"
#include "avcodec.h"

View File

@ -24,6 +24,8 @@
* Silicon Graphics Motion Video Compressor 1 & 2 decoder
*/
#include "config_components.h"
#include "libavutil/intreadwrite.h"
#include "avcodec.h"

View File

@ -21,6 +21,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "libavutil/common.h"
#include "libavutil/error.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "avcodec.h"
#include "internal.h"
#include "mjpegdec.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "avcodec.h"
#include "internal.h"
#include "mpegvideo.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "avcodec.h"
#include "internal.h"
#include "nvdec.h"

View File

@ -20,6 +20,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "nvenc.h"
#include "hevc_sei.h"

View File

@ -24,6 +24,8 @@
* Options definition for AVCodecContext.
*/
#include "config_components.h"
#include "avcodec.h"
#include "internal.h"
#include "libavutil/avassert.h"

View File

@ -22,6 +22,8 @@
#ifndef AVCODEC_OPTIONS_TABLE_H
#define AVCODEC_OPTIONS_TABLE_H
#include "config_components.h"
#include <float.h>
#include <limits.h>
#include <stdint.h>

View File

@ -23,6 +23,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "opustab.h"
#include "opus_pvq.h"

View File

@ -25,6 +25,7 @@
*/
#include "config.h"
#include "config_components.h"
#include "libavutil/attributes.h"
#include "libavutil/float_dsp.h"
#include "libavutil/thread.h"

View File

@ -21,6 +21,8 @@
//#define DEBUG
#include "config_components.h"
#include "libavutil/avassert.h"
#include "libavutil/bprint.h"
#include "libavutil/crc.h"

View File

@ -19,6 +19,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "avcodec.h"
#include "internal.h"
#include "put_bits.h"

View File

@ -19,6 +19,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/imgutils.h"
#include "libavutil/pixdesc.h"

View File

@ -28,6 +28,8 @@
#define LONG_BITSTREAM_READER
#include "config_components.h"
#include "libavutil/internal.h"
#include "libavutil/mem_internal.h"

View File

@ -29,6 +29,7 @@
#include <stdint.h>
#include "config.h"
#include "config_components.h"
#include "libavutil/attributes.h"
#include "copy_block.h"
#include "qpeldsp.h"

View File

@ -21,6 +21,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include <stdint.h>
#include <string.h>
#include <sys/types.h>

View File

@ -21,6 +21,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include <string.h>
#include <sys/types.h>
#include <mfx/mfxvideo.h>

View File

@ -21,6 +21,7 @@
*/
#include "avcodec.h"
#include "config_components.h"
#include "internal.h"
#include "libavutil/bswap.h"
#include "libavutil/common.h"

View File

@ -20,6 +20,8 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "avcodec.h"
#include "encode.h"
#include "internal.h"

View File

@ -24,6 +24,8 @@
* RV30/40 parser
*/
#include "config_components.h"
#include "parser.h"
#include "libavutil/intreadwrite.h"

View File

@ -18,6 +18,9 @@
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config_components.h"
#include "avcodec.h"
#include "encode.h"
#include "get_bits.h"

View File

@ -24,6 +24,8 @@
* Sunplus JPEG decoder (SP5X).
*/
#include "config_components.h"
#include "avcodec.h"
#include "internal.h"
#include "mjpeg.h"

Some files were not shown because too many files have changed in this diff Show More