From patchwork Wed Nov 30 23:22:50 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Cadhalpun X-Patchwork-Id: 1619 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.65.86 with SMTP id o83csp637529vsa; Wed, 30 Nov 2016 15:23:00 -0800 (PST) X-Received: by 10.28.141.18 with SMTP id p18mr29099449wmd.31.1480548180668; Wed, 30 Nov 2016 15:23:00 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id s124si9328979wmb.52.2016.11.30.15.23.00; Wed, 30 Nov 2016 15:23:00 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@googlemail.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=QUARANTINE dis=NONE) header.from=googlemail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 12119689F75; Thu, 1 Dec 2016 01:22:51 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm0-f51.google.com (mail-wm0-f51.google.com [74.125.82.51]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 361DF689F63 for ; Thu, 1 Dec 2016 01:22:44 +0200 (EET) Received: by mail-wm0-f51.google.com with SMTP id t79so232082023wmt.0 for ; Wed, 30 Nov 2016 15:22:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=from:subject:to:references:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding; bh=ZeA7/qAZku+zyYQWGRo3Y/jy+tiW/oMe3Aw6GmJ8kYc=; b=SPjxjxGII29v5b1p2/HQot6gJ2yiGmyGk3SKph6qHbvnJpCEH81NZhxkI2deADmqtf ZGk5XXPRw9G2uMMHeNUm5uF4oqARsKJEfzDmzikTbRM7FQEsZ4eP01IqgD+OCw5Tggt8 PKeqVegszCGQXb3qmsnRNiCu4OBYakV/Ge6XeJCHNB6reiHNmmMOP8njec94mn6cau1c Zy9fytMmKb7kjyMhPOxYCji3b029fZOSrK5AQ4NM0Iw4JD/i1am7Lz+WpZrVhjSvMeut KyvWjBxwO6zerGvLRuPV39pFMcCjx6NDvRAfHibAadTXlK+v0gGhJGl2XOh43nzcH9jy xmtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:subject:to:references:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=ZeA7/qAZku+zyYQWGRo3Y/jy+tiW/oMe3Aw6GmJ8kYc=; b=lMx3lqYqitICSQ9bi8/p7k8FapWyLYKBtGmjhbwHp92H25u3g0g5jiILN8Tb3q9B+w 0bu20EQ2EXTBQliBQ611GPxeYCHCwGjMSXzPkMErRgOjikHDocXDWPJ9/C9Zb58sTmih K4981MeXa36jBJFj00wNrdZKubjv2NtKUg1XOqdmnL59mRlffSbXNFYfeTJy4QtBW+eQ B7Igf3IPtY+rhR46WadGocApTPzfKKnm0BKbgF3gsn2J/wXub2CViYmR20m/HFQJtTz8 cmStF3DfGcOTFnLsBurUeOe8G9gMZwCvNHCHWijQ9AciE7aRc5XI7mcgt+WYAbAWBaCZ d9xw== X-Gm-Message-State: AKaTC01LAEJCR4+B0Ymtyr9RH+jVXCHIvnniLdcQc5QtD8xdnw7Zc0ymwwy3K0L5lzIR7g== X-Received: by 10.28.145.66 with SMTP id t63mr28733137wmd.99.1480548171336; Wed, 30 Nov 2016 15:22:51 -0800 (PST) Received: from [192.168.2.21] (p5B072E6A.dip0.t-ipconnect.de. [91.7.46.106]) by smtp.googlemail.com with ESMTPSA id d65sm10184731wmh.11.2016.11.30.15.22.50 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 30 Nov 2016 15:22:50 -0800 (PST) From: Andreas Cadhalpun X-Google-Original-From: Andreas Cadhalpun To: FFmpeg development discussions and patches References: <0509cabe-2a98-cec9-aa71-b4980d39e6b9@googlemail.com> Message-ID: <53432ffc-ccd2-d935-d535-63dffaacbc99@googlemail.com> Date: Thu, 1 Dec 2016 00:22:50 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.4.0 MIME-Version: 1.0 In-Reply-To: <0509cabe-2a98-cec9-aa71-b4980d39e6b9@googlemail.com> Subject: [FFmpeg-devel] [PATCH 3/3] configure: fail if autodetect-libraries are requested but not found X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Andreas Cadhalpun --- configure | 72 ++++++++++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 53 insertions(+), 19 deletions(-) diff --git a/configure b/configure index 28c78ef..0e9695b 100755 --- a/configure +++ b/configure @@ -597,6 +597,13 @@ popvar(){ done } +request(){ + for var in $*; do + eval ${var}_requested=yes + eval $var= + done +} + enable(){ set_all yes $* } @@ -653,6 +660,11 @@ enable_deep_weak(){ done } +requested(){ + test "${1#!}" = "$1" && op='=' || op=!= + eval test "x\$${1#!}_requested" $op "xyes" +} + enabled(){ test "${1#!}" = "$1" && op='=' || op=!= eval test "x\$${1#!}" $op "xyes" @@ -1481,10 +1493,25 @@ EXAMPLE_LIST=" transcode_aac_example transcoding_example " +EXTERNAL_AUTODETECT_LIBRARY_LIST=" + bzlib + iconv + libxcb + libxcb_shm + libxcb_shape + libxcb_xfixes + lzma + schannel + sdl + sdl2 + securetransport + xlib + zlib +" EXTERNAL_LIBRARY_LIST=" + $EXTERNAL_AUTODETECT_LIBRARY_LIST avisynth - bzlib chromaprint crystalhd decklink @@ -1492,7 +1519,6 @@ EXTERNAL_LIBRARY_LIST=" gcrypt gmp gnutls - iconv jni ladspa libass @@ -1545,42 +1571,26 @@ EXTERNAL_LIBRARY_LIST=" libx264 libx265 libxavs - libxcb - libxcb_shm - libxcb_shape - libxcb_xfixes libxvid libzimg libzmq libzvbi - lzma mediacodec netcdf openal opencl opengl openssl - schannel - sdl - sdl2 - securetransport videotoolbox x11grab - xlib - zlib " - -HWACCEL_LIBRARY_LIST=" +HWACCEL_AUTODETECT_LIBRARY_LIST=" audiotoolbox cuda cuvid d3d11va dxva2 - libmfx - libnpp - mmal nvenc - omx vaapi vda vdpau @@ -1588,6 +1598,14 @@ HWACCEL_LIBRARY_LIST=" xvmc " +HWACCEL_LIBRARY_LIST=" + $HWACCEL_AUTODETECT_LIBRARY_LIST + libmfx + libnpp + mmal + omx +" + DOCUMENT_LIST=" doc htmlpages @@ -1684,6 +1702,12 @@ ATOMICS_LIST=" atomics_win32 " +AUTODETECT_LIBS=" + $EXTERNAL_AUTODETECT_LIBRARY_LIST + $HWACCEL_AUTODETECT_LIBRARY_LIST + $THREADS_LIST +" + ARCH_LIST=" aarch64 alpha @@ -3482,6 +3506,11 @@ for e in $env; do eval "export $e" done +# Mark specifically enabled, but normally autodetected libraries as requested. +for lib in $AUTODETECT_LIBS; do + enabled $lib && request $lib +done + # Enable platform codecs by default. enable audiotoolbox @@ -6381,6 +6410,11 @@ for thread in $THREADS_LIST; do fi done +# Check if requested libraries were found. +for lib in $AUTODETECT_LIBS; do + requested $lib && ! enabled $lib && die "ERROR: $lib requested but not found"; +done + enabled zlib && add_cppflags -DZLIB_CONST # conditional library dependencies, in linking order