On Sun, 20 Mar 2016 10:01:44 +0100
Anton Khirnov <[email protected]> wrote:
> ---
> configure | 14 ++++++
> libavcodec/bitstream_filters.c | 37 +--------------
> libavformat/protocols.c | 105
> +----------------------------------------
> 3 files changed, 16 insertions(+), 140 deletions(-)
>
> diff --git a/configure b/configure
> index ba1fd47..33aa22f 100755
> --- a/configure
> +++ b/configure
> @@ -5246,6 +5246,20 @@ cp_if_changed $TMPH libavutil/avconfig.h
>
> test -n "$WARNINGS" && printf "\n$WARNINGS"
>
> +# generate the lists of enabled components
> +print_enabled_components(){
> + file=$1
> + shift
> + echo "" > $TMPH
> + for c in $*; do
> + enabled $c && printf "&ff_%s,\n" $c >> $TMPH
> + done
> + cp_if_changed $TMPH $file
> +}
> +
> +print_enabled_components libavcodec/bsf_list.c $BSF_LIST
> +print_enabled_components libavformat/protocol_list.c $PROTOCOL_LIST
> +
> # build pkg-config files
>
> lib_version(){
> diff --git a/libavcodec/bitstream_filters.c b/libavcodec/bitstream_filters.c
> index 897e1f8..cf43c1c 100644
> --- a/libavcodec/bitstream_filters.c
> +++ b/libavcodec/bitstream_filters.c
> @@ -38,42 +38,7 @@ extern const AVBitStreamFilter ff_noise_bsf;
> extern const AVBitStreamFilter ff_remove_extradata_bsf;
>
> static const AVBitStreamFilter *bitstream_filters[] = {
> -#if CONFIG_AAC_ADTSTOASC_BSF
> - &ff_aac_adtstoasc_bsf,
> -#endif
> -#if CONFIG_CHOMP_BSF
> - &ff_chomp_bsf,
> -#endif
> -#if CONFIG_DUMP_EXTRADATA_BSF
> - &ff_dump_extradata_bsf,
> -#endif
> -#if CONFIG_H264_MP4TOANNEXB_BSF
> - &ff_h264_mp4toannexb_bsf,
> -#endif
> -#if CONFIG_HEVC_MP4TOANNEXB_BSF
> - &ff_hevc_mp4toannexb_bsf,
> -#endif
> -#if CONFIG_IMX_DUMP_HEADER_BSF
> - &ff_imx_dump_header_bsf,
> -#endif
> -#if CONFIG_MJPEG2JPEG_BSF
> - &ff_mjpeg2jpeg_bsf,
> -#endif
> -#if CONFIG_MJPEGA_DUMP_HEADER_BSF
> - &ff_mjpeg2jpeg_bsf,
> -#endif
> -#if CONFIG_MOV2TEXTSUB_BSF
> - &ff_mov2textsub_bsf,
> -#endif
> -#if CONFIG_TEXT2MOVSUB_BSF
> - &ff_text2movsub_bsf,
> -#endif
> -#if CONFIG_NOISE_BSF
> - &ff_noise_bsf,
> -#endif
> -#if CONFIG_REMOVE_EXTRADATA_BSF
> - &ff_remove_extradata_bsf,
> -#endif
> +#include "libavcodec/bsf_list.c"
> NULL,
> };
>
> diff --git a/libavformat/protocols.c b/libavformat/protocols.c
> index b03adff..94e54a8 100644
> --- a/libavformat/protocols.c
> +++ b/libavformat/protocols.c
> @@ -59,110 +59,7 @@ extern const URLProtocol ff_librtmpt_protocol;
> extern const URLProtocol ff_librtmpte_protocol;
>
> static const URLProtocol *url_protocols[] = {
> -#if CONFIG_CONCAT_PROTOCOL
> - &ff_concat_protocol,
> -#endif
> -#if CONFIG_CRYPTO_PROTOCOL
> - &ff_crypto_protocol,
> -#endif
> -#if CONFIG_FFRTMPCRYPT_PROTOCOL
> - &ff_ffrtmpcrypt_protocol,
> -#endif
> -#if CONFIG_FFRTMPHTTP_PROTOCOL
> - &ff_ffrtmphttp_protocol,
> -#endif
> -#if CONFIG_FILE_PROTOCOL
> - &ff_file_protocol,
> -#endif
> -#if CONFIG_GOPHER_PROTOCOL
> - &ff_gopher_protocol,
> -#endif
> -#if CONFIG_HLS_PROTOCOL
> - &ff_hls_protocol,
> -#endif
> -#if CONFIG_HTTP_PROTOCOL
> - &ff_http_protocol,
> -#endif
> -#if CONFIG_HTTPPROXY_PROTOCOL
> - &ff_httpproxy_protocol,
> -#endif
> -#if CONFIG_HTTPS_PROTOCOL
> - &ff_https_protocol,
> -#endif
> -#if CONFIG_ICECAST_PROTOCOL
> - &ff_icecast_protocol,
> -#endif
> -#if CONFIG_MMSH_PROTOCOL
> - &ff_mmsh_protocol,
> -#endif
> -#if CONFIG_MMST_PROTOCOL
> - &ff_mmst_protocol,
> -#endif
> -#if CONFIG_MD5_PROTOCOL
> - &ff_md5_protocol,
> -#endif
> -#if CONFIG_PIPE_PROTOCOL
> - &ff_pipe_protocol,
> -#endif
> -#if CONFIG_RTMP_PROTOCOL
> - &ff_rtmp_protocol,
> -#endif
> -#if CONFIG_RTMPE_PROTOCOL
> - &ff_rtmpe_protocol,
> -#endif
> -#if CONFIG_RTMPS_PROTOCOL
> - &ff_rtmps_protocol,
> -#endif
> -#if CONFIG_RTMPT_PROTOCOL
> - &ff_rtmpt_protocol,
> -#endif
> -#if CONFIG_RTMPTE_PROTOCOL
> - &ff_rtmpte_protocol,
> -#endif
> -#if CONFIG_RTMPTS_PROTOCOL
> - &ff_rtmpts_protocol,
> -#endif
> -#if CONFIG_RTP_PROTOCOL
> - &ff_rtp_protocol,
> -#endif
> -#if CONFIG_SCTP_PROTOCOL
> - &ff_sctp_protocol,
> -#endif
> -#if CONFIG_SRTP_PROTOCOL
> - &ff_srtp_protocol,
> -#endif
> -#if CONFIG_TCP_PROTOCOL
> - &ff_tcp_protocol,
> -#endif
> -#if CONFIG_TLS_GNUTLS_PROTOCOL
> - &ff_tls_gnutls_protocol,
> -#endif
> -#if CONFIG_TLS_OPENSSL_PROTOCOL
> - &ff_tls_openssl_protocol,
> -#endif
> -#if CONFIG_UDP_PROTOCOL
> - &ff_udp_protocol,
> -#endif
> -#if CONFIG_UNIX_PROTOCOL
> - &ff_unix_protocol,
> -#endif
> -
> - /* external libraries */
> -#if CONFIG_LIBRTMP_PROTOCOL
> - &ff_librtmp_protocol,
> -#endif
> -#if CONFIG_LIBRTMPE_PROTOCOL
> - &ff_librtmpe_protocol,
> -#endif
> -#if CONFIG_LIBRTMPS_PROTOCOL
> - &ff_librtmps_protocol,
> -#endif
> -#if CONFIG_LIBRTMPT_PROTOCOL
> - &ff_librtmpt_protocol,
> -#endif
> -#if CONFIG_LIBRTMPTE_PROTOCOL
> - &ff_librtmpte_protocol,
> -#endif
> +#include "libavformat/protocol_list.c"
> NULL,
> };
>
So we have some cases where configure parses C files to get the list of
compoenents, and some where it generates C files? You're making the
codebase less consistent.
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel