From patchwork Wed May 25 09:34:58 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aman Karmani X-Patchwork-Id: 35920 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:6914:b0:82:6b11:2509 with SMTP id q20csp967947pzj; Wed, 25 May 2022 02:35:11 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwqL8E7GW8NDuzvlYt8TI6gfVLT/HHW7fNmGPZQ0sodkHy6lfJne1gupzbi7z7G7AtmWHdJ X-Received: by 2002:a17:907:8a09:b0:6ff:1a3:ec18 with SMTP id sc9-20020a1709078a0900b006ff01a3ec18mr7172028ejc.111.1653471310954; Wed, 25 May 2022 02:35:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1653471310; cv=none; d=google.com; s=arc-20160816; b=sd/5iCuBxbik6exn9LFCapCj5u+/qVCyhOT27Qdgghm2RVDBNZ85OvhcrOAsiptjyz SfVoe74VowZh9lgbjulLbkGxr5yxzZv0QYSyWi1RIQASeNwYtv9xFFZS4LVFD2KsOGKG TnqYMVgIPIvWBSgCMFCnhN8WjzRVR1l7LIz/yx2nlkwQ7lub4LWnhya0+5jQuvCXPJDA bgSDjqcP4jdgi3DOXf4NksQk/HukGX9XYOLsiGs20QFzqTGaBXbaSAazrvK3PC3xiy5/ lbaE4flxMkMyzSfUWctEUNWy42SxXikthK7fYLQS2gsN8t2itsIGOIdnu+opfNxwGnNi hJtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:to:mime-version:fcc:date:references :in-reply-to:message-id:from:dkim-signature:delivered-to; bh=uHe5J9Xo/7ADo6FgUT6yJ0sJyED5OIU65tb2tKVw3fo=; b=ls1iir1x+mZkReqgS+slynRW9VIaK6S3ST2rW//3T6+nrLZeHvoYj7qImhkguaWsu7 551R5YZOsQie6bOquawLM+XZSbIf9GxjXD80LzCJyhCMta0ip39yaHSKgain2AQJD8nJ 404DAwFuXi7T3RFpMXk5qB5f+JEHMWX15DfKtE8hyGsMyPvRQbDlcU+ceDAoM8vP42hO fbeT02Y9clJTuU7p2r8c1jDwKonV02FH3Gju7Le35/OIEkbjckLPAz7Q33gR8dv8Hgf6 L5ZTVA3UI4flGIl2epFWxvn/51MV0bU2ydU5CAjfa2Z1Tr0/p+Grr881eiYM1gecYuLp dI8g== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b="X5/2zBmB"; 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=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id ej12-20020a056402368c00b0042bcf4de436si228710edb.454.2022.05.25.02.35.10; Wed, 25 May 2022 02:35:10 -0700 (PDT) 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=@gmail.com header.s=20210112 header.b="X5/2zBmB"; 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=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9F45F68B527; Wed, 25 May 2022 12:35:07 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pj1-f49.google.com (mail-pj1-f49.google.com [209.85.216.49]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9271F68B44B for ; Wed, 25 May 2022 12:35:01 +0300 (EEST) Received: by mail-pj1-f49.google.com with SMTP id gz24so1230092pjb.2 for ; Wed, 25 May 2022 02:35:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:message-id:in-reply-to:references:date:subject:fcc :content-transfer-encoding:mime-version:to:cc; bh=Q3Fs4HwNSM+OQhmVyxEcsylJCGNRuz+4OuMUXrfpmhQ=; b=X5/2zBmBvXao2fKw07KuMMpFXBDOnV9DFGD5aB5zVhjy2v7me1WaN7YxBktCJtSRuq uHrhQ9NUxGk005SrWkCW497J3Ko1m3nbKmPhqLUV3X61MU46GGBRD6xJvcFpc5CgOMNo 5B8r6Tdw+FJZIbD7bVOphrKtNjNyrzvdNq5uhj45nE3r+Ycaz29YhkFP5my/rAuqZ2yH 6duFZUNIPK5mYnCz4ziooipOEkTV5TLX6Msd3p8xnWJpbpaMkppe4nODq/QNlla0Qv9n 4HogRmXnog0TuRl6sPBJFPnclad0rKAm5FlHYZ/II+IUQbG3roFxCwUXBxx/zR+S0/No KAFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:message-id:in-reply-to:references:date :subject:fcc:content-transfer-encoding:mime-version:to:cc; bh=Q3Fs4HwNSM+OQhmVyxEcsylJCGNRuz+4OuMUXrfpmhQ=; b=8PXzkBd/FDfmZM4NCm6jPjA5IVC92vtNP8HVCbj9sm74m5R3SZV8WeBuXL5gH84oXe d1k+zcvegaSwbh+0zPdPN5Z0S7IS5CXN24yyfBzy6YUryTZ5o3XuBdtxhRm+isW7KBuo gGrJMa/TVisgA/enbabzJGcBP9FBq1u+GVL8OFRIX/VhvPObF96vElQN9AgKIsiWvMfs SCgtPTx/fzambe6hKBxVygHw3e0xPq+JqY1lIQ/THXzdTfa1mMyFDQ0NKulPFCLDn3sv GnrkStx5dN3hburLjQGAdhC6YOx+bXNIjxXkoPetQ7HdNqwovcx8FppMBs5qkqPgGxxX QXSw== X-Gm-Message-State: AOAM530BJyO+GEKQ5TtYiXL68MkRTczqSmhGT6ibkByRiKoKmH5A2bg7 S8sPjoAFkbYIZqenJh8EJR95XtjISoVy5A== X-Received: by 2002:a17:90b:38cc:b0:1e0:1c6f:d3e3 with SMTP id nn12-20020a17090b38cc00b001e01c6fd3e3mr9454726pjb.86.1653471299842; Wed, 25 May 2022 02:34:59 -0700 (PDT) Received: from [127.0.0.1] (master.gitmailbox.com. [34.83.118.50]) by smtp.gmail.com with ESMTPSA id v17-20020a62c311000000b0050dc76281a6sm10815831pfg.128.2022.05.25.02.34.59 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 25 May 2022 02:34:59 -0700 (PDT) From: Matt Oliver X-Google-Original-From: Matt Oliver Message-Id: In-Reply-To: References: Date: Wed, 25 May 2022 09:34:58 +0000 Fcc: Sent MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Subject: [FFmpeg-devel] [PATCH v3] libx264: Set min build version to 158 X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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 Cc: softworkz , Matt Oliver Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: U8bK5Qi3p5j5 From: Matt Oliver Was "[PATCH] libx264: Do not explicitly set X264_API_IMPORTS" Setting X264_API_IMPORTS only affects msvc builds and it breaks linking to static builds (although is required for shared builds). This flag is set by x264 in its pkgconfig as required since build 158 (a615f027ed172e2dd5380e736d487aa858a0c4ff) from July 2019. So this patch updates configure to require a newer x264 build that correctly sets the imports flag. The requirement for 158 is applied for msvc builds only, no change is made for all other cases. Co-authored-by: softworkz Signed-off-by: softworkz Signed-off-by: Matt Oliver --- libx264: Set min build version to 158 I'm submitting this patch on behalf of Matt with his permission. There was agreement that the >= 158 version requirement should be applied to MSVC builds only. v2: restrict the version requirement to msvc builds v3: fix unintended author change Published-As: https://github.com/ffstaging/FFmpeg/releases/tag/pr-ffstaging-30%2Fsoftworkz%2Fsubmit_x264_api_imports_matt-v3 Fetch-It-Via: git fetch https://github.com/ffstaging/FFmpeg pr-ffstaging-30/softworkz/submit_x264_api_imports_matt-v3 Pull-Request: https://github.com/ffstaging/FFmpeg/pull/30 Range-diff vs v2: 1: 1696684de3 ! 1: 374130a09e libx264: Set min build version to 158 @@ ## Metadata ## -Author: softworkz +Author: Matt Oliver ## Commit message ## libx264: Set min build version to 158 configure | 8 +++----- libavcodec/libx264.c | 4 ---- 2 files changed, 3 insertions(+), 9 deletions(-) base-commit: b033913d1c5998a29dfd13e9906dd707ff6eff12 diff --git a/configure b/configure index f115b21064..9de9b7763a 100755 --- a/configure +++ b/configure @@ -6656,11 +6656,9 @@ enabled libvpx && { enabled libwebp && { enabled libwebp_encoder && require_pkg_config libwebp "libwebp >= 0.2.0" webp/encode.h WebPGetEncoderVersion enabled libwebp_anim_encoder && check_pkg_config libwebp_anim_encoder "libwebpmux >= 0.4.0" webp/mux.h WebPAnimEncoderOptionsInit; } -enabled libx264 && { check_pkg_config libx264 x264 "stdint.h x264.h" x264_encoder_encode || - { require libx264 "stdint.h x264.h" x264_encoder_encode "-lx264 $pthreads_extralibs $libm_extralibs" && - warn "using libx264 without pkg-config"; } } && - require_cpp_condition libx264 x264.h "X264_BUILD >= 118" && - check_cpp_condition libx262 x264.h "X264_MPEG2" +enabled libx264 && check_pkg_config libx264 x264 "stdint.h x264.h" x264_encoder_encode && + require_cpp_condition libx264 x264.h "X264_BUILD >= 158" || + { "$toolchain" != msvc && require_cpp_condition libx264 x264.h "X264_BUILD >= 118"; } enabled libx265 && require_pkg_config libx265 x265 x265.h x265_api_get && require_cpp_condition libx265 x265.h "X265_BUILD >= 70" enabled libxavs && require libxavs "stdint.h xavs.h" xavs_encoder_encode "-lxavs $pthreads_extralibs $libm_extralibs" diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c index 4ce3791ae8..14177b3016 100644 --- a/libavcodec/libx264.c +++ b/libavcodec/libx264.c @@ -37,10 +37,6 @@ #include "atsc_a53.h" #include "sei.h" -#if defined(_MSC_VER) -#define X264_API_IMPORTS 1 -#endif - #include #include #include