ffmpeg | branch: master | James Almer <[email protected]> | Wed Sep 27 18:56:08 2017 -0300| [7659f35638e2ca7a8b202cb3007ca5473b108fa4] | committer: James Almer
Merge commit 'dad7a9c7c0ae8ebc56f2e3a24e6fa4da5c2cd491' * commit 'dad7a9c7c0ae8ebc56f2e3a24e6fa4da5c2cd491': configure: Rework dependency handling for conflicting components Includes an important fix made by c546147db07d16a76c2fb698d2e8a3057f393475 as well. Merged-by: James Almer <[email protected]> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=7659f35638e2ca7a8b202cb3007ca5473b108fa4 --- configure | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/configure b/configure index 44c5637ea5..0af8f3c7e5 100755 --- a/configure +++ b/configure @@ -742,19 +742,21 @@ do_check_deps(){ eval dep_all="\$${cfg}_deps" eval dep_any="\$${cfg}_deps_any" + eval dep_con="\$${cfg}_conflict" eval dep_sel="\$${cfg}_select" eval dep_sgs="\$${cfg}_suggest" eval dep_ifa="\$${cfg}_if" eval dep_ifn="\$${cfg}_if_any" - pushvar cfg dep_all dep_any dep_sel dep_sgs dep_ifa dep_ifn - do_check_deps $dep_all $dep_any $dep_sel $dep_sgs $dep_ifa $dep_ifn - popvar cfg dep_all dep_any dep_sel dep_sgs dep_ifa dep_ifn + pushvar cfg dep_all dep_any dep_con dep_sel dep_sgs dep_ifa dep_ifn + do_check_deps $dep_all $dep_any $dep_con $dep_sel $dep_sgs $dep_ifa $dep_ifn + popvar cfg dep_all dep_any dep_con dep_sel dep_sgs dep_ifa dep_ifn [ -n "$dep_ifa" ] && { enabled_all $dep_ifa && enable_weak $cfg; } [ -n "$dep_ifn" ] && { enabled_any $dep_ifn && enable_weak $cfg; } enabled_all $dep_all || { disable $cfg && requested $cfg && die "ERROR: $cfg requested, but not all dependencies are satisfied: $dep_all"; } enabled_any $dep_any || { disable $cfg && requested $cfg && die "ERROR: $cfg requested, but not any dependency is satisfied: $dep_any"; } + disabled_all $dep_con || { disable $cfg && requested $cfg && die "ERROR: $cfg requested, but some conflicting dependencies are unsatisfied: $dep_con"; } disabled_any $dep_sel && { disable $cfg && requested $cfg && die "ERROR: $cfg requested, but some selected dependency is unsatisfied: $dep_sel"; } if enabled $cfg; then @@ -2379,7 +2381,8 @@ simd_align_32_if_any="avx" # system capabilities symver_if_any="symver_asm_label symver_gnu_asm" -valgrind_backtrace_deps="!optimizations valgrind_valgrind_h" +valgrind_backtrace_conflict="optimizations" +valgrind_backtrace_deps="valgrind_valgrind_h" # threading support atomics_gcc_if="sync_val_compare_and_swap" @@ -3119,10 +3122,10 @@ xv_outdev_extralibs="-lXv -lX11 -lXext" # protocols async_protocol_deps="threads" bluray_protocol_deps="libbluray" -ffrtmpcrypt_protocol_deps="!librtmp_protocol" +ffrtmpcrypt_protocol_conflict="librtmp_protocol" ffrtmpcrypt_protocol_deps_any="gcrypt gmp openssl" ffrtmpcrypt_protocol_select="tcp_protocol" -ffrtmphttp_protocol_deps="!librtmp_protocol" +ffrtmphttp_protocol_conflict="librtmp_protocol" ffrtmphttp_protocol_select="http_protocol" ftp_protocol_select="tcp_protocol" gopher_protocol_select="network" @@ -3139,10 +3142,10 @@ libsmbclient_protocol_deps="libsmbclient gplv3" libssh_protocol_deps="libssh" mmsh_protocol_select="http_protocol" mmst_protocol_select="network" -rtmp_protocol_deps="!librtmp_protocol" +rtmp_protocol_conflict="librtmp_protocol" rtmp_protocol_select="tcp_protocol" rtmpe_protocol_select="ffrtmpcrypt_protocol" -rtmps_protocol_deps="!librtmp_protocol" +rtmps_protocol_conflict="librtmp_protocol" rtmps_protocol_select="tls_protocol" rtmpt_protocol_select="ffrtmphttp_protocol" rtmpte_protocol_select="ffrtmpcrypt_protocol ffrtmphttp_protocol" @@ -3152,9 +3155,11 @@ sctp_protocol_deps="struct_sctp_event_subscribe struct_msghdr_msg_flags" sctp_protocol_select="network" srtp_protocol_select="rtp_protocol srtp" tcp_protocol_select="network" -tls_gnutls_protocol_deps="gnutls !tls_schannel_protocol !tls_securetransport_protocol" +tls_gnutls_protocol_conflict="tls_schannel_protocol tls_securetransport_protocol" +tls_gnutls_protocol_deps="gnutls" tls_gnutls_protocol_select="tcp_protocol" -tls_openssl_protocol_deps="openssl !tls_schannel_protocol !tls_securetransport_protocol !tls_gnutls_protocol" +tls_openssl_protocol_conflict="tls_schannel_protocol tls_securetransport_protocol tls_gnutls_protocol" +tls_openssl_protocol_deps="openssl" tls_openssl_protocol_select="tcp_protocol" tls_schannel_protocol_deps="schannel" tls_schannel_protocol_select="tcp_protocol" ====================================================================== diff --cc configure index 44c5637ea5,7d39acab37..0af8f3c7e5 --- a/configure +++ b/configure @@@ -747,15 -626,16 +748,16 @@@ do_check_deps() eval dep_ifa="\$${cfg}_if" eval dep_ifn="\$${cfg}_if_any" - pushvar cfg dep_all dep_any dep_sel dep_sgs dep_ifa dep_ifn - do_check_deps $dep_all $dep_any $dep_sel $dep_sgs $dep_ifa $dep_ifn - popvar cfg dep_all dep_any dep_sel dep_sgs dep_ifa dep_ifn + pushvar cfg dep_all dep_any dep_con dep_sel dep_sgs dep_ifa dep_ifn - check_deps $dep_all $dep_any $dep_con $dep_sel $dep_sgs $dep_ifa $dep_ifn ++ do_check_deps $dep_all $dep_any $dep_con $dep_sel $dep_sgs $dep_ifa $dep_ifn + popvar cfg dep_all dep_any dep_con dep_sel dep_sgs dep_ifa dep_ifn [ -n "$dep_ifa" ] && { enabled_all $dep_ifa && enable_weak $cfg; } [ -n "$dep_ifn" ] && { enabled_any $dep_ifn && enable_weak $cfg; } - enabled_all $dep_all || disable $cfg - enabled_any $dep_any || disable $cfg - disabled_all $dep_con || disable $cfg - disabled_any $dep_sel && disable $cfg + enabled_all $dep_all || { disable $cfg && requested $cfg && die "ERROR: $cfg requested, but not all dependencies are satisfied: $dep_all"; } + enabled_any $dep_any || { disable $cfg && requested $cfg && die "ERROR: $cfg requested, but not any dependency is satisfied: $dep_any"; } ++ disabled_all $dep_con || { disable $cfg && requested $cfg && die "ERROR: $cfg requested, but some conflicting dependencies are unsatisfied: $dep_con"; } + disabled_any $dep_sel && { disable $cfg && requested $cfg && die "ERROR: $cfg requested, but some selected dependency is unsatisfied: $dep_sel"; } if enabled $cfg; then enable_deep $dep_sel @@@ -3110,21 -2420,16 +3113,21 @@@ sdl2_outdev_deps="sdl2 sndio_indev_deps="sndio" sndio_outdev_deps="sndio" v4l2_indev_deps_any="linux_videodev2_h sys_videoio_h" +v4l2_outdev_deps_any="linux_videodev2_h sys_videoio_h" vfwcap_indev_deps="vfw32 vfwcap_defines" xcbgrab_indev_deps="libxcb" -xcbgrab_indev_suggest="libxcb_shm libxcb_xfixes" +xv_outdev_deps="X11_extensions_Xvlib_h XvGetPortAttribute" +xv_outdev_extralibs="-lXv -lX11 -lXext" # protocols +async_protocol_deps="threads" +bluray_protocol_deps="libbluray" - ffrtmpcrypt_protocol_deps="!librtmp_protocol" + ffrtmpcrypt_protocol_conflict="librtmp_protocol" -ffrtmpcrypt_protocol_deps_any="gmp openssl" +ffrtmpcrypt_protocol_deps_any="gcrypt gmp openssl" ffrtmpcrypt_protocol_select="tcp_protocol" - ffrtmphttp_protocol_deps="!librtmp_protocol" + ffrtmphttp_protocol_conflict="librtmp_protocol" ffrtmphttp_protocol_select="http_protocol" +ftp_protocol_select="tcp_protocol" gopher_protocol_select="network" http_protocol_select="tcp_protocol" httpproxy_protocol_select="tcp_protocol" @@@ -3135,14 -2440,12 +3138,14 @@@ librtmpe_protocol_deps="librtmp librtmps_protocol_deps="librtmp" librtmpt_protocol_deps="librtmp" librtmpte_protocol_deps="librtmp" +libsmbclient_protocol_deps="libsmbclient gplv3" +libssh_protocol_deps="libssh" mmsh_protocol_select="http_protocol" mmst_protocol_select="network" - rtmp_protocol_deps="!librtmp_protocol" + rtmp_protocol_conflict="librtmp_protocol" rtmp_protocol_select="tcp_protocol" rtmpe_protocol_select="ffrtmpcrypt_protocol" - rtmps_protocol_deps="!librtmp_protocol" + rtmps_protocol_conflict="librtmp_protocol" rtmps_protocol_select="tls_protocol" rtmpt_protocol_select="ffrtmphttp_protocol" rtmpte_protocol_select="ffrtmpcrypt_protocol ffrtmphttp_protocol" @@@ -3152,17 -2455,13 +3155,19 @@@ sctp_protocol_deps="struct_sctp_event_s sctp_protocol_select="network" srtp_protocol_select="rtp_protocol srtp" tcp_protocol_select="network" - tls_gnutls_protocol_deps="gnutls !tls_schannel_protocol !tls_securetransport_protocol" ++tls_gnutls_protocol_conflict="tls_schannel_protocol tls_securetransport_protocol" + tls_gnutls_protocol_deps="gnutls" tls_gnutls_protocol_select="tcp_protocol" - tls_openssl_protocol_deps="openssl !tls_schannel_protocol !tls_securetransport_protocol !tls_gnutls_protocol" -tls_openssl_protocol_conflict="tls_gnutls_protocol" ++tls_openssl_protocol_conflict="tls_schannel_protocol tls_securetransport_protocol tls_gnutls_protocol" + tls_openssl_protocol_deps="openssl" tls_openssl_protocol_select="tcp_protocol" -tls_protocol_deps_any="tls_gnutls_protocol tls_openssl_protocol" +tls_schannel_protocol_deps="schannel" +tls_schannel_protocol_select="tcp_protocol" +tls_securetransport_protocol_deps="securetransport" +tls_securetransport_protocol_select="tcp_protocol" +tls_protocol_deps_any="tls_schannel_protocol tls_securetransport_protocol tls_gnutls_protocol tls_openssl_protocol" udp_protocol_select="network" +udplite_protocol_select="network" unix_protocol_deps="sys_un_h" unix_protocol_select="network" _______________________________________________ ffmpeg-cvslog mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
