Merge commit 'd154bdd3d053128c908a994bb26e14bbc17f0e53'
authorJames Almer <jamrial@gmail.com>
Wed, 4 Oct 2017 04:05:56 +0000 (01:05 -0300)
committerJames Almer <jamrial@gmail.com>
Wed, 4 Oct 2017 04:05:56 +0000 (01:05 -0300)
* commit 'd154bdd3d053128c908a994bb26e14bbc17f0e53':
  configure: Simplify dlopen check

Merged-by: James Almer <jamrial@gmail.com>
1  2 
configure

diff --cc configure
+++ b/configure
@@@ -2635,28 -2148,18 +2634,28 @@@ wmv2_decoder_select="blockdsp error_res
  wmv2_encoder_select="h263_encoder wmv2dsp"
  wmv3_decoder_select="vc1_decoder"
  wmv3image_decoder_select="wmv3_decoder"
 -zerocodec_decoder_deps="zlib"
 -zlib_decoder_deps="zlib"
 -zlib_encoder_deps="zlib"
 -zmbv_decoder_deps="zlib"
 -zmbv_encoder_deps="zlib"
 +xma1_decoder_select="wmapro_decoder"
 +xma2_decoder_select="wmapro_decoder"
 +zerocodec_decoder_select="zlib"
 +zlib_decoder_select="zlib"
 +zlib_encoder_select="zlib"
 +zmbv_decoder_select="zlib"
 +zmbv_encoder_select="zlib"
  
  # hardware accelerators
 -d3d11va_deps="d3d11_h dxva_h ID3D11VideoDecoder"
 -dxva2_deps="dxva2api_h DXVA2_ConfigPictureDecode"
 -dxva2_lib_deps="dxva2"
 -vda_deps="VideoDecodeAcceleration_VDADecoder_h blocks_extension pthreads"
 -vda_extralibs="-framework CoreFoundation -framework VideoDecodeAcceleration -framework QuartzCore"
 +crystalhd_deps="libcrystalhd_libcrystalhd_if_h"
- cuda_deps_any="dlopen LoadLibrary"
++cuda_deps_any="libdl LoadLibrary"
 +cuvid_deps="cuda"
 +d3d11va_deps="d3d11_h dxva_h ID3D11VideoDecoder ID3D11VideoContext"
 +dxva2_deps="dxva2api_h DXVA2_ConfigPictureDecode ole32"
 +dxva2_extralibs="-luser32"
 +vda_framework_deps="VideoDecodeAcceleration_VDADecoder_h blocks_extension"
 +vda_framework_extralibs="-framework VideoDecodeAcceleration"
 +vda_deps="vda_framework pthreads"
 +vda_extralibs="-framework CoreFoundation -framework QuartzCore"
 +videotoolbox_hwaccel_deps="videotoolbox pthreads"
 +videotoolbox_hwaccel_extralibs="-framework QuartzCore"
 +xvmc_deps="X11_extensions_XvMClib_h"
  
  h263_vaapi_hwaccel_deps="vaapi"
  h263_vaapi_hwaccel_select="h263_decoder"
@@@ -2778,8 -2221,8 +2777,7 @@@ wmv3_vaapi_hwaccel_select="vc1_vaapi_hw
  wmv3_vdpau_hwaccel_select="vc1_vdpau_hwaccel"
  
  # hardware-accelerated codecs
- omx_deps="dlopen pthreads"
- omx_extralibs='$ldl'
 -nvenc_deps_any="libdl LoadLibrary"
+ omx_deps="libdl pthreads"
  omx_rpi_select="omx"
  qsvdec_select="qsv"
  qsvenc_select="qsv"
@@@ -2788,20 -2230,7 +2786,20 @@@ v4l2_m2m_deps_any="linux_videodev2_h
  
  hwupload_cuda_filter_deps="cuda"
  scale_npp_filter_deps="cuda libnpp"
 +scale_cuda_filter_deps="cuda_sdk"
 +thumbnail_cuda_filter_deps="cuda_sdk"
  
- nvenc_deps_any="dlopen LoadLibrary"
 +nvenc_deps="cuda"
++nvenc_deps_any="libdl LoadLibrary"
 +nvenc_encoder_deps="nvenc"
 +
 +h263_v4l2m2m_decoder_deps="v4l2_m2m h263_v4l2_m2m"
 +h263_v4l2m2m_encoder_deps="v4l2_m2m h263_v4l2_m2m"
 +h264_crystalhd_decoder_select="crystalhd h264_mp4toannexb_bsf h264_parser"
 +h264_cuvid_decoder_deps="cuda cuvid"
 +h264_cuvid_decoder_select="h264_mp4toannexb_bsf"
 +h264_mediacodec_decoder_deps="mediacodec"
 +h264_mediacodec_decoder_select="h264_mp4toannexb_bsf h264_parser"
  h264_mmal_decoder_deps="mmal"
  h264_nvenc_encoder_deps="nvenc"
  h264_omx_encoder_deps="omx"
@@@ -2902,42 -2280,13 +2900,42 @@@ vc1_parser_select="vc1dsp
  mjpeg2jpeg_bsf_select="jpegtables"
  
  # external libraries
 -avisynth_deps="LoadLibrary"
 -avxsynth_deps="libdl"
 -avisynth_demuxer_deps_any="avisynth avxsynth"
 +aac_at_decoder_deps="audiotoolbox"
 +ac3_at_decoder_deps="audiotoolbox"
 +ac3_at_decoder_select="ac3_parser"
 +adpcm_ima_qt_at_decoder_deps="audiotoolbox"
 +alac_at_decoder_deps="audiotoolbox"
 +amr_nb_at_decoder_deps="audiotoolbox"
- avisynth_deps_any="dlopen LoadLibrary"
++avisynth_deps_any="libdl LoadLibrary"
 +avisynth_demuxer_deps="avisynth"
  avisynth_demuxer_select="riffdec"
 -libdcadec_decoder_deps="libdcadec"
 -libfaac_encoder_deps="libfaac"
 -libfaac_encoder_select="audio_frame_queue"
 +eac3_at_decoder_deps="audiotoolbox"
 +eac3_at_decoder_select="ac3_parser"
 +gsm_ms_at_decoder_deps="audiotoolbox"
 +ilbc_at_decoder_deps="audiotoolbox"
 +mp1_at_decoder_deps="audiotoolbox"
 +mp2_at_decoder_deps="audiotoolbox"
 +mp3_at_decoder_deps="audiotoolbox"
 +mp1_at_decoder_select="mpegaudioheader"
 +mp2_at_decoder_select="mpegaudioheader"
 +mp3_at_decoder_select="mpegaudioheader"
 +pcm_alaw_at_decoder_deps="audiotoolbox"
 +pcm_mulaw_at_decoder_deps="audiotoolbox"
 +qdmc_at_decoder_deps="audiotoolbox"
 +qdm2_at_decoder_deps="audiotoolbox"
 +aac_at_encoder_deps="audiotoolbox"
 +aac_at_encoder_select="audio_frame_queue"
 +alac_at_encoder_deps="audiotoolbox"
 +alac_at_encoder_select="audio_frame_queue"
 +ilbc_at_encoder_deps="audiotoolbox"
 +ilbc_at_encoder_select="audio_frame_queue"
 +pcm_alaw_at_encoder_deps="audiotoolbox"
 +pcm_alaw_at_encoder_select="audio_frame_queue"
 +pcm_mulaw_at_encoder_deps="audiotoolbox"
 +pcm_mulaw_at_encoder_select="audio_frame_queue"
 +chromaprint_muxer_deps="chromaprint"
 +h264_videotoolbox_encoder_deps="videotoolbox_encoder pthreads"
 +libcelt_decoder_deps="libcelt"
  libfdk_aac_decoder_deps="libfdk_aac"
  libfdk_aac_encoder_deps="libfdk_aac"
  libfdk_aac_encoder_select="audio_frame_queue"
@@@ -3079,35 -2402,16 +3077,35 @@@ xwma_demuxer_select="riffdec
  # indevs / outdevs
  alsa_indev_deps="alsa"
  alsa_outdev_deps="alsa"
 -avfoundation_indev_deps="AVFoundation_AVFoundation_h objc_arc pthreads"
 -avfoundation_indev_extralibs="-framework Foundation -framework AVFoundation -framework CoreVideo -framework CoreMedia"
 +avfoundation_indev_deps="avfoundation pthreads"
 +avfoundation_indev_extralibs="-framework Foundation -framework CoreVideo -framework CoreMedia"
  bktr_indev_deps_any="dev_bktr_ioctl_bt848_h machine_ioctl_bt848_h dev_video_bktr_ioctl_bt848_h dev_ic_bt8xx_h"
 -dv1394_indev_deps="dv1394"
 -dv1394_indev_select="dv_demuxer"
 +caca_outdev_deps="libcaca"
- decklink_indev_deps="decklink threads"
++decklink_indev_deps="decklink threads libdl"
 +decklink_indev_extralibs="-lstdc++"
- decklink_outdev_deps="decklink threads"
++decklink_outdev_deps="decklink threads libdl"
 +decklink_outdev_extralibs="-lstdc++"
- libndi_newtek_indev_deps="libndi_newtek"
++libndi_newtek_indev_deps="libndi_newtek libdl"
 +libndi_newtek_indev_extralibs="-lndi"
- libndi_newtek_outdev_deps="libndi_newtek"
++libndi_newtek_outdev_deps="libndi_newtek libdl"
 +libndi_newtek_outdev_extralibs="-lndi"
 +dshow_indev_deps="IBaseFilter"
 +dshow_indev_extralibs="-lpsapi -lole32 -lstrmiids -luuid -loleaut32 -lshlwapi"
  fbdev_indev_deps="linux_fb_h"
 +fbdev_outdev_deps="linux_fb_h"
 +gdigrab_indev_deps="CreateDIBSection"
 +gdigrab_indev_extralibs="-lgdi32"
 +gdigrab_indev_select="bmp_decoder"
 +iec61883_indev_deps="libiec61883"
  jack_indev_deps="jack"
  jack_indev_deps_any="sem_timedwait dispatch_dispatch_h"
 +kmsgrab_indev_deps="libdrm"
 +lavfi_indev_deps="avfilter"
  libcdio_indev_deps="libcdio"
  libdc1394_indev_deps="libdc1394"
 +libv4l2_indev_deps="libv4l2"
 +openal_indev_deps="openal"
 +opengl_outdev_deps="opengl"
  oss_indev_deps_any="soundcard_h sys_soundcard_h"
  oss_outdev_deps_any="soundcard_h sys_soundcard_h"
  pulse_indev_deps="libpulse"
@@@ -3198,83 -2472,18 +3196,83 @@@ cropdetect_filter_deps="gpl
  deinterlace_qsv_filter_deps="libmfx"
  deinterlace_vaapi_filter_deps="vaapi"
  delogo_filter_deps="gpl"
 +deshake_filter_select="pixelutils"
  drawtext_filter_deps="libfreetype"
 -drawtext_filter_suggest="libfontconfig"
 +elbg_filter_deps="avcodec"
 +eq_filter_deps="gpl"
 +fftfilt_filter_deps="avcodec"
 +fftfilt_filter_select="rdft"
 +find_rect_filter_deps="avcodec avformat gpl"
 +firequalizer_filter_deps="avcodec"
 +firequalizer_filter_select="rdft"
 +flite_filter_deps="libflite"
 +framerate_filter_select="pixelutils"
- frei0r_filter_deps="frei0r dlopen"
- frei0r_src_filter_deps="frei0r dlopen"
+ frei0r_filter_deps="frei0r libdl"
+ frei0r_src_filter_deps="frei0r libdl"
 -hdcd_filter_deps="libhdcd"
 +fspp_filter_deps="gpl"
 +geq_filter_deps="gpl"
 +histeq_filter_deps="gpl"
  hqdn3d_filter_deps="gpl"
  interlace_filter_deps="gpl"
- ladspa_filter_deps="ladspa dlopen"
 +kerndeint_filter_deps="gpl"
++ladspa_filter_deps="ladspa libdl"
 +mcdeint_filter_deps="avcodec gpl"
  movie_filter_deps="avcodec avformat"
 +mpdecimate_filter_deps="gpl"
 +mpdecimate_filter_select="pixelutils"
 +mptestsrc_filter_deps="gpl"
 +negate_filter_deps="lut_filter"
 +nnedi_filter_deps="gpl"
 +ocr_filter_deps="libtesseract"
  ocv_filter_deps="libopencv"
 +owdenoise_filter_deps="gpl"
 +pan_filter_deps="swresample"
 +perspective_filter_deps="gpl"
 +phase_filter_deps="gpl"
 +pp7_filter_deps="gpl"
 +pp_filter_deps="gpl postproc"
 +pullup_filter_deps="gpl"
 +removelogo_filter_deps="avcodec avformat swscale"
 +repeatfields_filter_deps="gpl"
  resample_filter_deps="avresample"
 +rubberband_filter_deps="librubberband"
 +sab_filter_deps="gpl swscale"
 +scale2ref_filter_deps="swscale"
  scale_filter_deps="swscale"
  scale_qsv_filter_deps="libmfx"
 +select_filter_select="pixelutils"
 +showcqt_filter_deps="avcodec avformat swscale"
 +showcqt_filter_select="fft"
 +showfreqs_filter_deps="avcodec"
 +showfreqs_filter_select="fft"
 +showspectrum_filter_deps="avcodec"
 +showspectrum_filter_select="fft"
 +showspectrumpic_filter_deps="avcodec"
 +showspectrumpic_filter_select="fft"
 +signature_filter_deps="gpl avcodec avformat"
 +smartblur_filter_deps="gpl swscale"
 +sofalizer_filter_deps="libmysofa avcodec"
 +sofalizer_filter_select="fft"
 +spectrumsynth_filter_deps="avcodec"
 +spectrumsynth_filter_select="fft"
 +spp_filter_deps="gpl avcodec"
 +spp_filter_select="fft idctdsp fdctdsp me_cmp pixblockdsp"
 +stereo3d_filter_deps="gpl"
 +subtitles_filter_deps="avformat avcodec libass"
 +super2xsai_filter_deps="gpl"
 +pixfmts_super2xsai_test_deps="super2xsai_filter"
 +tinterlace_filter_deps="gpl"
 +tinterlace_merge_test_deps="tinterlace_filter"
 +tinterlace_pad_test_deps="tinterlace_filter"
 +tonemap_filter_deps="const_nan"
 +uspp_filter_deps="gpl avcodec"
 +vaguedenoiser_filter_deps="gpl"
 +vidstabdetect_filter_deps="libvidstab"
 +vidstabtransform_filter_deps="libvidstab"
 +libvmaf_filter_deps="libvmaf"
 +zmq_filter_deps="libzmq"
 +zoompan_filter_deps="swscale"
 +zscale_filter_deps="libzimg const_nan"
  scale_vaapi_filter_deps="vaapi VAProcPipelineParameterBuffer"
  
  # examples
  check_code cc arm_neon.h "int16x8_t test = vdupq_n_s16(0)" && enable intrinsics_neon
  
  check_ldflags -Wl,--as-needed
 +check_ldflags -Wl,-z,noexecstack
  
- if check_func dlopen && check_func dlsym; then
-     ldl=
- elif check_func dlopen -ldl && check_func dlsym -ldl; then
-     ldl=-ldl
- fi
- avisynth_demuxer_extralibs='$ldl'
- cuda_extralibs='$ldl'
- decklink_outdev_extralibs="$decklink_outdev_extralibs $ldl"
- decklink_indev_extralibs="$decklink_indev_extralibs $ldl"
- libndi_newtek_outdev_extralibs="$libndi_newtek_outdev_extralibs $ldl"
- libndi_newtek_indev_extralibs="$libndi_newtek_indev_extralibs $ldl"
- frei0r_filter_extralibs='$ldl'
- frei0r_src_filter_extralibs='$ldl'
- ladspa_filter_extralibs='$ldl'
- nvenc_extralibs='$ldl'
  if ! disabled network; then
      check_func getaddrinfo $network_extralibs
      check_func inet_aton $network_extralibs
  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  zlib.h      zlibVersion -lz
 -disabled bzlib || check_lib bzlib bzlib.h BZ2_bzlibVersion -lbz2
 +enabled  zlib && check_lib zlib   zlib.h      zlibVersion    -lz
 +enabled bzlib && check_lib bzlib bzlib.h BZ2_bzlibVersion    -lbz2
 +enabled  lzma && check_lib lzma   lzma.h lzma_version_number -llzma
  
 -check_lib libdl dlfcn.h dlopen || check_lib libdl dlfcn.h dlopen -ldl
+ # On some systems dynamic loading requires no extra linker flags
++check_lib libdl dlfcn.h dlopen || { check_func dlsym -ldl && check_lib libdl dlfcn.h dlopen -ldl; }
  check_lib libm math.h sin -lm && LIBM="-lm"
  
  atan2f_args=2