On 2016-09-12 17:53:54 +0200, Diego Biurrun wrote:
> The latter can do everything the former can do, but also handle conditions
> the former cannot like multiple header #includes and checking for headers
> and functions in a single test program, which is necessary for certain
> library tests.
> ---
>
> Squashed 1/3 and 2/3 together as Janne preferred.
>
> configure | 52 ++++++++++++++++++----------------------------------
> 1 file changed, 18 insertions(+), 34 deletions(-)
>
> diff --git a/configure b/configure
> index 520f07c..356dbc1 100755
> --- a/configure
> +++ b/configure
> @@ -988,14 +988,6 @@ EOF
>
> check_lib(){
> log check_lib "$@"
> - header="$1"
> - func="$2"
> - shift 2
> - check_header $header && check_func $func "$@" && add_extralibs "$@"
> -}
> -
> -check_lib2(){
> - log check_lib2 "$@"
> headers="$1"
> funcs="$2"
> shift 2
> @@ -1092,18 +1084,10 @@ check_compile_assert(){
>
> require(){
> name="$1"
> - header="$2"
> - func="$3"
> - shift 3
> - check_lib $header $func "$@" || die "ERROR: $name not found"
> -}
> -
> -require2(){
> - name="$1"
> headers="$2"
> func="$3"
> shift 3
> - check_lib2 "$headers" $func "$@" || die "ERROR: $name not found"
> + check_lib "$headers" $func "$@" || die "ERROR: $name not found"
> }
>
> require_pkg_config(){
> @@ -4536,9 +4520,9 @@ check_header VideoDecodeAcceleration/VDADecoder.h
> check_header windows.h
> check_header X11/extensions/XvMClib.h
>
> -check_lib2 "windows.h shellapi.h" CommandLineToArgvW -lshell32
> -check_lib2 "windows.h wincrypt.h" CryptGenRandom -ladvapi32
> -check_lib2 "windows.h psapi.h" GetProcessMemoryInfo -lpsapi
> +check_lib "windows.h shellapi.h" CommandLineToArgvW -lshell32
> +check_lib "windows.h wincrypt.h" CryptGenRandom -ladvapi32
> +check_lib "windows.h psapi.h" GetProcessMemoryInfo -lpsapi
>
> check_struct "sys/time.h sys/resource.h" "struct rusage" ru_maxrss
>
> @@ -4581,8 +4565,8 @@ fi
> enabled pthreads &&
> check_builtin sem_timedwait semaphore.h "sem_t *s; sem_init(s,0,0);
> sem_timedwait(s,0); sem_destroy(s)"
>
> -disabled zlib || check_lib zlib.h zlibVersion -lz || disable zlib
> -disabled bzlib || check_lib2 bzlib.h BZ2_bzlibVersion -lbz2 || disable bzlib
> +disabled zlib || check_lib zlib.h zlibVersion -lz || disable zlib
> +disabled bzlib || check_lib bzlib.h BZ2_bzlibVersion -lbz2 || disable bzlib
>
> check_lib math.h sin -lm && LIBM="-lm"
>
> @@ -4595,15 +4579,15 @@ for func in $MATH_FUNCS; do
> done
>
> # these are off by default, so fail if requested and not available
> -enabled avisynth && { check_lib2 "avisynth/avisynth_c.h windows.h"
> LoadLibrary ||
> - check_lib2 "avxsynth/avxsynth_c.h dlfcn.h"
> dlopen -ldl ||
> +enabled avisynth && { check_lib "avisynth/avisynth_c.h windows.h"
> LoadLibrary ||
> + check_lib "avxsynth/avxsynth_c.h dlfcn.h"
> dlopen -ldl ||
> die "ERROR: LoadLibrary/dlopen not found, or
> avisynth header not found"; }
> enabled cuda && check_lib cuda.h cuInit -lcuda
> enabled frei0r && { check_header frei0r.h || die "ERROR: frei0r.h
> header not found"; }
> enabled gnutls && require_pkg_config gnutls gnutls/gnutls.h
> gnutls_global_init
> enabled libbs2b && require_pkg_config libbs2b bs2b.h bs2b_open
> enabled libdcadec && require libdcadec libdcadec/dca_context.h
> dcadec_context_create -ldcadec
> -enabled libfaac && require2 libfaac "stdint.h faac.h"
> faacEncGetVersion -lfaac
> +enabled libfaac && require libfaac "stdint.h faac.h"
> faacEncGetVersion -lfaac
> enabled libfdk_aac && require_pkg_config fdk-aac
> "fdk-aac/aacenc_lib.h" aacEncOpen
> enabled libfontconfig && require_pkg_config fontconfig
> "fontconfig/fontconfig.h" FcInit
> enabled libfreetype && require_pkg_config freetype2 "ft2build.h
> FT_FREETYPE_H" FT_Init_FreeType
> @@ -4620,7 +4604,7 @@ enabled libopencore_amrnb && require libopencore_amrnb
> opencore-amrnb/interf_dec
> enabled libopencore_amrwb && require libopencore_amrwb
> opencore-amrwb/dec_if.h D_IF_init -lopencore-amrwb
> enabled libopencv && require_pkg_config opencv opencv/cv.h
> cvCreateImageHeader
> enabled libopenh264 && require_pkg_config openh264 wels/codec_api.h
> WelsGetCodecVersion
> -enabled libopenjpeg && { check_lib2 openjpeg.h opj_version -lopenjpeg
> -DOPJ_STATIC ||
> +enabled libopenjpeg && { check_lib openjpeg.h opj_version -lopenjpeg
> -DOPJ_STATIC ||
> require_pkg_config libopenjpeg1 openjpeg.h
> opj_version -DOPJ_STATIC; }
> enabled libopus && require_pkg_config opus opus_multistream.h
> opus_multistream_decoder_create
> enabled libpulse && require_pkg_config libpulse-simple
> pulse/simple.h pa_simple_new
> @@ -4746,16 +4730,16 @@ check_header sys/soundcard.h
> check_header soundcard.h
>
> enabled_any alsa_indev alsa_outdev &&
> - check_lib2 alsa/asoundlib.h snd_pcm_htimestamp -lasound
> + check_lib alsa/asoundlib.h snd_pcm_htimestamp -lasound
>
> -enabled jack_indev && check_lib2 jack/jack.h jack_client_open -ljack &&
> +enabled jack_indev && check_lib jack/jack.h jack_client_open -ljack &&
> check_func jack_port_get_latency_range -ljack
>
> -enabled_any sndio_indev sndio_outdev && check_lib2 sndio.h sio_open -lsndio
> +enabled_any sndio_indev sndio_outdev && check_lib sndio.h sio_open -lsndio
>
> if enabled libcdio; then
> - check_lib2 "cdio/cdda.h cdio/paranoia.h" cdio_cddap_open -lcdio_paranoia
> -lcdio_cdda -lcdio ||
> - check_lib2 "cdio/paranoia/cdda.h cdio/paranoia/paranoia.h"
> cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio ||
> + check_lib "cdio/cdda.h cdio/paranoia.h" cdio_cddap_open -lcdio_paranoia
> -lcdio_cdda -lcdio ||
> + check_lib "cdio/paranoia/cdda.h cdio/paranoia/paranoia.h"
> cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio ||
> die "ERROR: No usable libcdio/cdparanoia found"
> fi
>
> @@ -4788,10 +4772,10 @@ enabled vaapi &&
>
> if enabled vaapi ; then
> enabled xlib &&
> - check_lib2 "va/va.h va/va_x11.h" vaGetDisplay -lva -lva-x11 &&
> + check_lib "va/va.h va/va_x11.h" vaGetDisplay -lva -lva-x11 &&
> enable vaapi_x11
>
> - check_lib2 "va/va.h va/va_drm.h" vaGetDisplayDRM -lva -lva-drm &&
> + check_lib "va/va.h va/va_drm.h" vaGetDisplayDRM -lva -lva-drm &&
> enable vaapi_drm
> fi
>
> @@ -4800,7 +4784,7 @@ enabled vdpau &&
> disable vdpau
>
> enabled vdpau && enabled xlib &&
> - check_lib2 "vdpau/vdpau.h vdpau/vdpau_x11.h" vdp_device_create_x11
> -lvdpau &&
> + check_lib "vdpau/vdpau.h vdpau/vdpau_x11.h" vdp_device_create_x11
> -lvdpau &&
> enable vdpau_x11
>
> enabled debug && add_cflags -g"$debuglevel" && add_asflags -g"$debuglevel"
ok
Janne
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel