Merge commit 'ae90119c6701fa09ff747cca35238e36b2d2ab2f'
authorClément Bœsch <u@pkh.me>
Wed, 15 Mar 2017 20:09:06 +0000 (21:09 +0100)
committerClément Bœsch <u@pkh.me>
Wed, 15 Mar 2017 20:19:57 +0000 (21:19 +0100)
* commit 'ae90119c6701fa09ff747cca35238e36b2d2ab2f':
  configure: Simplify license incompatibility check

An extra GPLV3 list is added for libsmbclient as having it in both GPL
and VERSION3 lists would cause a duplicate in the final config list.

Also, for consistency, libnpp is treated the same as the other nonfree
component (libfdk_aac and openssl).

Merged-by: Clément Bœsch <u@pkh.me>
1  2 
configure

diff --cc configure
+++ b/configure
@@@ -1477,74 -1211,70 +1477,100 @@@ COMPONENT_LIST=
  "
  
  EXAMPLE_LIST="
 -    avcodec_example
 +    avio_dir_cmd_example
 +    avio_reading_example
 +    decoding_encoding_example
 +    demuxing_decoding_example
 +    extract_mvs_example
      filter_audio_example
 +    filtering_audio_example
 +    filtering_video_example
 +    http_multiclient_example
      metadata_example
 -    output_example
 +    muxing_example
      qsvdec_example
 +    remuxing_example
 +    resampling_audio_example
 +    scaling_video_example
      transcode_aac_example
 +    transcoding_example
  "
 -
 -HWACCEL_LIBRARY_NONFREE_LIST="
 -    cuda
 -    libnpp
 -"
 -HWACCEL_LIBRARY_LIST="
 -    $HWACCEL_LIBRARY_NONFREE_LIST
 -    d3d11va
 -    dxva2
 -    libmfx
 -    mmal
 -    nvenc
 -    omx
 -    vaapi
 -    vda
 -    vdpau
 +EXTERNAL_AUTODETECT_LIBRARY_LIST="
 +    bzlib
 +    iconv
 +    libxcb
 +    libxcb_shm
 +    libxcb_shape
 +    libxcb_xfixes
 +    lzma
 +    schannel
 +    sdl
 +    sdl2
 +    securetransport
 +    xlib
 +    zlib
  "
  
 -    libfaac
+ EXTERNAL_LIBRARY_GPL_LIST="
++    frei0r
+     libcdio
++    librubberband
++    libvidstab
+     libx264
+     libx265
+     libxavs
+     libxvid
+     x11grab
+ "
+ EXTERNAL_LIBRARY_NONFREE_LIST="
 -    libvo_aacenc
+     libfdk_aac
+     openssl
+ "
+ EXTERNAL_LIBRARY_VERSION3_LIST="
++    gmp
+     libopencore_amrnb
+     libopencore_amrwb
+     libvo_amrwbenc
+ "
++EXTERNAL_LIBRARY_GPLV3_LIST="
++    libsmbclient
++"
++
  EXTERNAL_LIBRARY_LIST="
 +    $EXTERNAL_AUTODETECT_LIBRARY_LIST
+     $EXTERNAL_LIBRARY_GPL_LIST
+     $EXTERNAL_LIBRARY_NONFREE_LIST
+     $EXTERNAL_LIBRARY_VERSION3_LIST
++    $EXTERNAL_LIBRARY_GPLV3_LIST
      avisynth
 -    bzlib
 -    frei0r
 +    chromaprint
 +    crystalhd
 +    decklink
-     frei0r
 +    gcrypt
-     gmp
      gnutls
 +    jni
 +    ladspa
 +    libass
 +    libbluray
      libbs2b
-     libcdio
 +    libcaca
 +    libcelt
      libdc1394
-     libfdk_aac
 -    libdcadec
 +    libflite
      libfontconfig
      libfreetype
 +    libfribidi
 +    libgme
      libgsm
 +    libiec61883
      libilbc
      libkvazaar
 +    libmodplug
      libmp3lame
-     libopencore_amrnb
-     libopencore_amrwb
 +    libnut
      libopencv
      libopenh264
      libopenjpeg
      libopus
      libpulse
      librtmp
-     librubberband
      libschroedinger
 +    libshine
 +    libsmbclient
      libsnappy
 +    libsoxr
      libspeex
 +    libssh
 +    libtesseract
      libtheora
      libtwolame
-     libvidstab
-     libvo_amrwbenc
 +    libv4l2
      libvorbis
      libvpx
      libwavpack
      libwebp
-     libx264
-     libx265
-     libxavs
-     libxvid
 -    libxcb
 -    libxcb_shm
 -    libxcb_xfixes
 -    zlib
 +    libzimg
 +    libzmq
 +    libzvbi
 +    mediacodec
 +    netcdf
 +    openal
 +    opencl
 +    opengl
-     openssl
 +    videotoolbox
-     x11grab
 +"
 +HWACCEL_AUTODETECT_LIBRARY_LIST="
 +    audiotoolbox
 +    cuda
 +    cuvid
 +    d3d11va
 +    dxva2
 +    nvenc
 +    vaapi
 +    vda
 +    vdpau
 +    videotoolbox_hwaccel
 +    xvmc
 +"
 +
++HWACCEL_LIBRARY_NONFREE_LIST="
++    libnpp
++"
++
 +HWACCEL_LIBRARY_LIST="
 +    $HWACCEL_AUTODETECT_LIBRARY_LIST
++    $HWACCEL_LIBRARY_NONFREE_LIST
 +    libmfx
-     libnpp
 +    mmal
 +    omx
 +"
 +
 +DOCUMENT_LIST="
 +    doc
 +    htmlpages
 +    manpages
 +    podpages
 +    txtpages
  "
  
  FEATURE_LIST="
  fi
  
  die_license_disabled() {
-     enabled $1 || { enabled $2 && die "$2 is $1 and --enable-$1 is not specified."; }
+     enabled $1 || { enabled $v && die "$v is $1 and --enable-$1 is not specified."; }
  }
  
 -map "die_license_disabled gpl"      $EXTERNAL_LIBRARY_GPL_LIST
 -map "die_license_disabled nonfree"  $EXTERNAL_LIBRARY_NONFREE_LIST $HWACCEL_LIBRARY_NONFREE_LIST
 -map "die_license_disabled version3" $EXTERNAL_LIBRARY_VERSION3_LIST
 +die_license_disabled_gpl() {
-     enabled $1 || { enabled $2 && die "$2 is incompatible with the gpl and --enable-$1 is not specified."; }
- }
- die_license_disabled gpl frei0r
- die_license_disabled gpl libcdio
- die_license_disabled gpl librubberband
- die_license_disabled gpl libsmbclient
- die_license_disabled gpl libvidstab
- die_license_disabled gpl libx264
- die_license_disabled gpl libx265
- die_license_disabled gpl libxavs
- die_license_disabled gpl libxvid
- die_license_disabled gpl x11grab
- die_license_disabled nonfree libnpp
- enabled gpl && die_license_disabled_gpl nonfree libfdk_aac
- enabled gpl && die_license_disabled_gpl nonfree openssl
- die_license_disabled version3 gmp
- die_license_disabled version3 libopencore_amrnb
- die_license_disabled version3 libopencore_amrwb
- die_license_disabled version3 libsmbclient
- die_license_disabled version3 libvo_amrwbenc
++    enabled $1 || { enabled $v && die "$v is incompatible with the gpl and --enable-$1 is not specified."; }
++}
++
++map "die_license_disabled gpl"      $EXTERNAL_LIBRARY_GPL_LIST $EXTERNAL_LIBRARY_GPLV3_LIST
++map "die_license_disabled version3" $EXTERNAL_LIBRARY_VERSION3_LIST $EXTERNAL_LIBRARY_GPLV3_LIST
++
++enabled gpl && map "die_license_disabled_gpl nonfree" $EXTERNAL_LIBRARY_NONFREE_LIST $HWACCEL_LIBRARY_NONFREE_LIST
  
  enabled version3 && { enabled gpl && enable gplv3 || enable lgplv3; }