[FFmpeg-devel] Added require fallback for libmfx in the case that pkg-config cannot find libmfx
Aaron Levinson
alevinsn at aracnet.com
Sat Apr 15 15:41:32 EEST 2017
On 4/15/2017 4:25 AM, Ricardo Constantino wrote:
> On 15 April 2017 at 02:51, Aaron Levinson <alevinsn at aracnet.com> wrote:
>
>> From e0c73c054add0137901d0bf7a7893e42e7e566c8 Mon Sep 17 00:00:00 2001
>> From: Aaron Levinson <alevinsn at aracnet.com>
>> Date: Fri, 14 Apr 2017 18:38:37 -0700
>> Subject: [PATCH] Added require fallback for libmfx in the case that
>> pkg-config cannot find libmfx
>>
>> Purpose: Added require fallback for libmfx in the case that pkg-config
>> cannot find libmfx. On Linux, most people likely get libmfx via
>> https://github.com/lu-zero/mfx_dispatch , but on Windows, the most
>> well-known way to get libmfx is via the Intel Media SDK, which
>> provides a static build of libmfx.lib and also provides the source
>> code for building libmfx yourself. If built this way, there are no
>> pkg-config files to be found. The changes utilize a similar approach
>> to that already done for libx264 in configure.
>>
>> Comments:
>>
>> -- configure: Altered enabled libmfx step to use use_pkg_config()
>> instead of require_pkg_config(), and, if use_pkg_config() fails, it
>> falls back to require(). Note that the reason that require() is
>> passed -llibmfx as the last argument, instead of -lmfx, is the file
>> name for the library produced from the Intel Media SDK starts with
>> "libmfx". Apparently, the filename for the library produced via
>> https://github.com/lu-zero/mfx_dispatch starts with "mfx".
>> ---
>> configure | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/configure b/configure
>> index 3bea057..b20a0b4 100755
>> --- a/configure
>> +++ b/configure
>> @@ -5819,7 +5819,8 @@ enabled libgsm && { for gsm_hdr in
>> "gsm.h" "gsm/gsm.h"; do
>> done || die "ERROR: libgsm not found"; }
>> enabled libilbc && require libilbc ilbc.h
>> WebRtcIlbcfix_InitDecode -lilbc
>> enabled libkvazaar && require_pkg_config "kvazaar >= 0.8.1"
>> kvazaar.h kvz_api_get
>> -enabled libmfx && require_pkg_config libmfx "mfx/mfxvideo.h"
>> MFXInit
>> +enabled libmfx && { use_pkg_config libmfx "mfx/mfxvideo.h"
>> MFXInit ||
>> + { require libmfx "mfx/mfxvideo.h" MFXInit
>> -llibmfx && warn "using libmfx without pkg-config"; } }
>>
> Needs a '|| die "ERROR: libmfx not found";' before the last curly bracket
> or it won't complain about not finding libmfx if enabled.
Doesn't require() already do that? Here is the contents of require():
require(){
log require "$@"
name_version="$1"
headers="$2"
func="$3"
shift 3
check_lib "$headers" $func "$@" || die "ERROR: $name_version not found"
}
Aaron
More information about the ffmpeg-devel
mailing list