18 changed files with 299 additions and 837 deletions
@ -1,567 +0,0 @@ |
|||
From 7ae60470cdb0bea4548a0f5e8271b359f9450c79 Mon Sep 17 00:00:00 2001 |
|||
From: Jeffrey Kardatzke <[email protected]> |
|||
Date: Fri, 5 Feb 2021 03:33:58 +0000 |
|||
Subject: [PATCH] vaapi: Update for libva forwards compatibility |
|||
|
|||
There was a downstream patch applied for protected content for libva. |
|||
This patch is now upstreamed, but is not compatible with the downstream |
|||
version. This change will allow us to update libva in ChromeOS to an |
|||
intermediate version that'll be compatible with both downstream and |
|||
upstream. Then we can shift Chrome to the upstream API, and then remove |
|||
the downstream compatibility layer from ChromeOS after that and be on |
|||
upstream. |
|||
|
|||
BUG=b:174951211 |
|||
TEST=Chrome builds, protected content plays back |
|||
|
|||
Change-Id: Id06b21daf19a54b340236b354b5f4a828e2362de |
|||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2672690 |
|||
Reviewed-by: Andres Calderon Jaramillo <[email protected]> |
|||
Reviewed-by: J Kardatzke <[email protected]> |
|||
Commit-Queue: J Kardatzke <[email protected]> |
|||
Cr-Commit-Position: refs/heads/[email protected]{#850949} |
|||
---
|
|||
.../h264_vaapi_video_decoder_delegate.cc | 7 + |
|||
.../vaapi/h265_vaapi_video_decoder_delegate.h | 7 + |
|||
media/gpu/vaapi/va_prot.sigs | 1 - |
|||
media/gpu/vaapi/vaapi_utils.h | 7 + |
|||
.../gpu/vaapi/vaapi_video_decoder_delegate.cc | 11 +- |
|||
.../gpu/vaapi/vaapi_video_decoder_delegate.h | 7 + |
|||
media/gpu/vaapi/vaapi_wrapper.cc | 30 +-- |
|||
media/gpu/vaapi/vaapi_wrapper.h | 7 + |
|||
.../va_protected_content.h | 225 ++---------------- |
|||
tools/metrics/histograms/enums.xml | 2 +- |
|||
10 files changed, 75 insertions(+), 229 deletions(-) |
|||
|
|||
diff --git a/media/gpu/vaapi/h264_vaapi_video_decoder_delegate.cc b/media/gpu/vaapi/h264_vaapi_video_decoder_delegate.cc
|
|||
index 6e82506082ede..22fa594610540 100644
|
|||
--- a/media/gpu/vaapi/h264_vaapi_video_decoder_delegate.cc
|
|||
+++ b/media/gpu/vaapi/h264_vaapi_video_decoder_delegate.cc
|
|||
@@ -4,6 +4,13 @@
|
|||
|
|||
#include "media/gpu/vaapi/h264_vaapi_video_decoder_delegate.h" |
|||
|
|||
+// TODO(jkardatzke): Remove this once the transition to the new upstream
|
|||
+// protected content API is complete. This is used to bridge a transition
|
|||
+// between the libva pull request we used, and what actually landed upstream.
|
|||
+#ifndef LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#define LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#endif
|
|||
+
|
|||
#include <va/va.h> |
|||
|
|||
#include "base/memory/aligned_memory.h" |
|||
diff --git a/media/gpu/vaapi/h265_vaapi_video_decoder_delegate.h b/media/gpu/vaapi/h265_vaapi_video_decoder_delegate.h
|
|||
index d152c3df8a90a..986c2b530076e 100644
|
|||
--- a/media/gpu/vaapi/h265_vaapi_video_decoder_delegate.h
|
|||
+++ b/media/gpu/vaapi/h265_vaapi_video_decoder_delegate.h
|
|||
@@ -5,6 +5,13 @@
|
|||
#ifndef MEDIA_GPU_VAAPI_H265_VAAPI_VIDEO_DECODER_DELEGATE_H_ |
|||
#define MEDIA_GPU_VAAPI_H265_VAAPI_VIDEO_DECODER_DELEGATE_H_ |
|||
|
|||
+// TODO(jkardatzke): Remove this once the transition to the new upstream
|
|||
+// protected content API is complete. This is used to bridge a transition
|
|||
+// between the libva pull request we used, and what actually landed upstream.
|
|||
+#ifndef LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#define LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#endif
|
|||
+
|
|||
#include <va/va.h> |
|||
|
|||
#include "base/memory/scoped_refptr.h" |
|||
diff --git a/media/gpu/vaapi/va_prot.sigs b/media/gpu/vaapi/va_prot.sigs
|
|||
index 1ffcd61778d11..dd13dafef1add 100644
|
|||
--- a/media/gpu/vaapi/va_prot.sigs
|
|||
+++ b/media/gpu/vaapi/va_prot.sigs
|
|||
@@ -9,5 +9,4 @@ VAStatus vaCreateProtectedSession(VADisplay dpy, VAConfigID config_id, VAProtect
|
|||
VAStatus vaDestroyProtectedSession(VADisplay dpy, VAProtectedSessionID protected_session); |
|||
VAStatus vaAttachProtectedSession(VADisplay dpy, VAContextID reserved, VAProtectedSessionID protected_session); |
|||
VAStatus vaDetachProtectedSession(VADisplay dpy, VAContextID reserved); |
|||
-VAStatus vaProtectedSessionHwUpdate(VADisplay dpy, VAProtectedSessionID protected_session, VABufferID buf_id);
|
|||
VAStatus vaProtectedSessionExecute(VADisplay dpy, VAProtectedSessionID protected_session, VABufferID buf_id); |
|||
\ No newline at end of file |
|||
diff --git a/media/gpu/vaapi/vaapi_utils.h b/media/gpu/vaapi/vaapi_utils.h
|
|||
index 9bcee23ce96d1..fd42ad2a148e3 100644
|
|||
--- a/media/gpu/vaapi/vaapi_utils.h
|
|||
+++ b/media/gpu/vaapi/vaapi_utils.h
|
|||
@@ -5,6 +5,13 @@
|
|||
#ifndef MEDIA_GPU_VAAPI_VAAPI_UTILS_H_ |
|||
#define MEDIA_GPU_VAAPI_VAAPI_UTILS_H_ |
|||
|
|||
+// TODO(jkardatzke): Remove this once the transition to the new upstream
|
|||
+// protected content API is complete. This is used to bridge a transition
|
|||
+// between the libva pull request we used, and what actually landed upstream.
|
|||
+#ifndef LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#define LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#endif
|
|||
+
|
|||
#include <va/va.h> |
|||
|
|||
#include "base/callback_forward.h" |
|||
diff --git a/media/gpu/vaapi/vaapi_video_decoder_delegate.cc b/media/gpu/vaapi/vaapi_video_decoder_delegate.cc
|
|||
index 07b7b3ce03f1b..a0a8ea67bd8c6 100644
|
|||
--- a/media/gpu/vaapi/vaapi_video_decoder_delegate.cc
|
|||
+++ b/media/gpu/vaapi/vaapi_video_decoder_delegate.cc
|
|||
@@ -133,11 +133,13 @@ VaapiVideoDecoderDelegate::SetupDecryptDecode(
|
|||
DCHECK_EQ(protected_session_state_, ProtectedSessionState::kCreated); |
|||
|
|||
if (encryption_scheme_ == EncryptionScheme::kCenc) { |
|||
- crypto_params->encryption_type =
|
|||
- full_sample ? VA_ENCRYPTION_TYPE_CENC_CTR : VA_ENCRYPTION_TYPE_CTR_128;
|
|||
+ crypto_params->encryption_type = full_sample
|
|||
+ ? VA_ENCRYPTION_TYPE_FULLSAMPLE_CTR
|
|||
+ : VA_ENCRYPTION_TYPE_SUBSAMPLE_CTR;
|
|||
} else { |
|||
- crypto_params->encryption_type =
|
|||
- full_sample ? VA_ENCRYPTION_TYPE_CENC_CBC : VA_ENCRYPTION_TYPE_CBC;
|
|||
+ crypto_params->encryption_type = full_sample
|
|||
+ ? VA_ENCRYPTION_TYPE_FULLSAMPLE_CBC
|
|||
+ : VA_ENCRYPTION_TYPE_SUBSAMPLE_CBC;
|
|||
} |
|||
|
|||
// For multi-slice we may already have segment information in here, so |
|||
@@ -224,6 +226,7 @@ VaapiVideoDecoderDelegate::SetupDecryptDecode(
|
|||
memcpy(crypto_params->wrapped_decrypt_blob, |
|||
hw_key_data_map_[decrypt_config_->key_id()].data(), |
|||
DecryptConfig::kDecryptionKeySize); |
|||
+ crypto_params->key_blob_size = DecryptConfig::kDecryptionKeySize;
|
|||
crypto_params->segment_info = &segments->front(); |
|||
#else // if BUILDFLAG(IS_CHROMEOS_ASH) |
|||
protected_session_state_ = ProtectedSessionState::kFailed; |
|||
diff --git a/media/gpu/vaapi/vaapi_video_decoder_delegate.h b/media/gpu/vaapi/vaapi_video_decoder_delegate.h
|
|||
index 1e222a41c543c..aeb48a75bd2c9 100644
|
|||
--- a/media/gpu/vaapi/vaapi_video_decoder_delegate.h
|
|||
+++ b/media/gpu/vaapi/vaapi_video_decoder_delegate.h
|
|||
@@ -5,6 +5,13 @@
|
|||
#ifndef MEDIA_GPU_VAAPI_VAAPI_VIDEO_DECODER_DELEGATE_H_ |
|||
#define MEDIA_GPU_VAAPI_VAAPI_VIDEO_DECODER_DELEGATE_H_ |
|||
|
|||
+// TODO(jkardatzke): Remove this once the transition to the new upstream
|
|||
+// protected content API is complete. This is used to bridge a transition
|
|||
+// between the libva pull request we used, and what actually landed upstream.
|
|||
+#ifndef LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#define LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#endif
|
|||
+
|
|||
#include <map> |
|||
#include <memory> |
|||
#include <string> |
|||
diff --git a/media/gpu/vaapi/vaapi_wrapper.cc b/media/gpu/vaapi/vaapi_wrapper.cc
|
|||
index 696ffaf00d866..cd2ee37998fbd 100644
|
|||
--- a/media/gpu/vaapi/vaapi_wrapper.cc
|
|||
+++ b/media/gpu/vaapi/vaapi_wrapper.cc
|
|||
@@ -133,7 +133,7 @@ enum class VaapiFunctions {
|
|||
kVADestroyProtectedSession = 26, |
|||
kVAAttachProtectedSession = 27, |
|||
kVADetachProtectedSession = 28, |
|||
- kVAProtectedSessionHwUpdate = 29,
|
|||
+ kVAProtectedSessionHwUpdate_Deprecated = 29,
|
|||
kVAProtectedSessionExecute = 30, |
|||
// Anything else is captured in this last entry. |
|||
kOtherVAFunction = 31, |
|||
@@ -176,7 +176,7 @@ constexpr std::array<const char*,
|
|||
"vaDestroyProtectedSession", |
|||
"vaAttachProtectedSession", |
|||
"vaDetachProtectedSession", |
|||
- "vaProtectedSessionHwUpdate",
|
|||
+ "vaProtectedSessionHwUpdate (Deprecated)",
|
|||
"vaProtectedSessionExecute", |
|||
"Other VA function"}; |
|||
|
|||
@@ -811,7 +811,7 @@ bool GetRequiredAttribs(const base::Lock* va_lock,
|
|||
#if BUILDFLAG(IS_CHROMEOS_ASH) |
|||
if (mode == VaapiWrapper::kDecodeProtected && profile != VAProfileProtected) { |
|||
required_attribs->push_back( |
|||
- {VAConfigAttribEncryption, VA_ENCRYPTION_TYPE_CTR_128});
|
|||
+ {VAConfigAttribEncryption, VA_ENCRYPTION_TYPE_SUBSAMPLE_CTR});
|
|||
required_attribs->push_back( |
|||
{VAConfigAttribDecProcessing, VA_DEC_PROCESSING}); |
|||
} |
|||
@@ -1852,13 +1852,14 @@ bool VaapiWrapper::CreateProtectedSession(
|
|||
// We have to hold the VABuffer outside of the lock because its destructor |
|||
// will acquire the lock when it goes out of scope. We also must do this after |
|||
// we create the protected session. |
|||
- VAProtectedSessionHwUpdateBuffer hw_update_buf;
|
|||
+ VAProtectedSessionExecuteBuffer hw_update_buf;
|
|||
std::unique_ptr<ScopedVABuffer> hw_update = CreateVABuffer( |
|||
- VAProtectedSessionHwUpdateBufferType, sizeof(hw_update_buf));
|
|||
+ VAProtectedSessionExecuteBufferType, sizeof(hw_update_buf));
|
|||
{ |
|||
base::AutoLock auto_lock(*va_lock_); |
|||
constexpr size_t kHwIdentifierMaxSize = 64; |
|||
memset(&hw_update_buf, 0, sizeof(hw_update_buf)); |
|||
+ hw_update_buf.function_id = VA_TEE_EXEC_TEE_FUNCID_HW_UPDATE;
|
|||
hw_update_buf.input.data_size = hw_config.size(); |
|||
hw_update_buf.input.data = |
|||
static_cast<void*>(const_cast<uint8_t*>(hw_config.data())); |
|||
@@ -1868,22 +1869,22 @@ bool VaapiWrapper::CreateProtectedSession(
|
|||
if (!MapAndCopy_Locked( |
|||
hw_update->id(), |
|||
{hw_update->type(), hw_update->size(), &hw_update_buf})) { |
|||
- LOG(ERROR) << "Failed mapping HwUpdate buf";
|
|||
+ LOG(ERROR) << "Failed mapping Execute buf";
|
|||
return false; |
|||
} |
|||
|
|||
- VAStatus va_res = vaProtectedSessionHwUpdate(
|
|||
+ VAStatus va_res = vaProtectedSessionExecute(
|
|||
va_display_, va_protected_session_id_, hw_update->id()); |
|||
- VA_SUCCESS_OR_RETURN(va_res, VaapiFunctions::kVAProtectedSessionHwUpdate,
|
|||
+ VA_SUCCESS_OR_RETURN(va_res, VaapiFunctions::kVAProtectedSessionExecute,
|
|||
false); |
|||
|
|||
ScopedVABufferMapping mapping(va_lock_, va_display_, hw_update->id()); |
|||
if (!mapping.IsValid()) { |
|||
- LOG(ERROR) << "Failed mapping returned HwUpdate buf";
|
|||
+ LOG(ERROR) << "Failed mapping returned Execute buf";
|
|||
return false; |
|||
} |
|||
auto* hw_update_buf_out = |
|||
- reinterpret_cast<VAProtectedSessionHwUpdateBuffer*>(mapping.data());
|
|||
+ reinterpret_cast<VAProtectedSessionExecuteBuffer*>(mapping.data());
|
|||
if (!hw_update_buf_out->output.data_size) { |
|||
LOG(ERROR) << "Received empty HW identifier"; |
|||
return false; |
|||
@@ -1964,10 +1965,9 @@ bool VaapiWrapper::IsProtectedSessionDead() {
|
|||
if (va_protected_session_id_ == VA_INVALID_ID) |
|||
return false; |
|||
|
|||
- constexpr uint32_t kVaTeeExecGpuFuncIdIsSessionAlive = 0x40000103;
|
|||
uint8_t alive; |
|||
VAProtectedSessionExecuteBuffer tee_exec_buf = {}; |
|||
- tee_exec_buf.function_id = kVaTeeExecGpuFuncIdIsSessionAlive;
|
|||
+ tee_exec_buf.function_id = VA_TEE_EXEC_TEE_FUNCID_IS_SESSION_ALIVE;
|
|||
tee_exec_buf.input.data_size = 0; |
|||
tee_exec_buf.input.data = nullptr; |
|||
tee_exec_buf.output.data_size = sizeof(alive); |
|||
@@ -2518,7 +2518,7 @@ std::unique_ptr<ScopedVABuffer> VaapiWrapper::CreateVABuffer(VABufferType type,
|
|||
base::AutoLock auto_lock(*va_lock_); |
|||
TRACE_EVENT0("media,gpu", "VaapiWrapper::CreateVABufferLocked"); |
|||
#if BUILDFLAG(IS_CHROMEOS_ASH) |
|||
- VAContextID context_id = type == VAProtectedSessionHwUpdateBufferType
|
|||
+ VAContextID context_id = type == VAProtectedSessionExecuteBufferType
|
|||
? va_protected_session_id_ |
|||
: va_context_id_; |
|||
#else |
|||
@@ -2807,8 +2807,8 @@ bool VaapiWrapper::Initialize(CodecMode mode,
|
|||
for (auto& attrib : required_attribs) { |
|||
if (attrib.type == VAConfigAttribEncryption) { |
|||
attrib.value = (encryption_scheme == EncryptionScheme::kCbcs) |
|||
- ? VA_ENCRYPTION_TYPE_CBC
|
|||
- : VA_ENCRYPTION_TYPE_CTR_128;
|
|||
+ ? VA_ENCRYPTION_TYPE_SUBSAMPLE_CBC
|
|||
+ : VA_ENCRYPTION_TYPE_SUBSAMPLE_CTR;
|
|||
} |
|||
} |
|||
} |
|||
diff --git a/media/gpu/vaapi/vaapi_wrapper.h b/media/gpu/vaapi/vaapi_wrapper.h
|
|||
index 29b6864998240..f58723a0e852e 100644
|
|||
--- a/media/gpu/vaapi/vaapi_wrapper.h
|
|||
+++ b/media/gpu/vaapi/vaapi_wrapper.h
|
|||
@@ -10,6 +10,13 @@
|
|||
#ifndef MEDIA_GPU_VAAPI_VAAPI_WRAPPER_H_ |
|||
#define MEDIA_GPU_VAAPI_VAAPI_WRAPPER_H_ |
|||
|
|||
+// TODO(jkardatzke): Remove this once the transition to the new upstream
|
|||
+// protected content API is complete. This is used to bridge a transition
|
|||
+// between the libva pull request we used, and what actually landed upstream.
|
|||
+#ifndef LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#define LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+#endif
|
|||
+
|
|||
#include <stddef.h> |
|||
#include <stdint.h> |
|||
#include <va/va.h> |
|||
diff --git a/third_party/libva_protected_content/va_protected_content.h b/third_party/libva_protected_content/va_protected_content.h
|
|||
index dfea3ce94a285..c14a77da41389 100644
|
|||
--- a/third_party/libva_protected_content/va_protected_content.h
|
|||
+++ b/third_party/libva_protected_content/va_protected_content.h
|
|||
@@ -46,6 +46,7 @@ extern "C" {
|
|||
* @{ |
|||
*/ |
|||
|
|||
+#ifdef LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
/** |
|||
* |
|||
* A protected content function for processing cipher protected content. |
|||
@@ -97,16 +98,19 @@ extern "C" {
|
|||
/** \brief Encryption parameters buffer for content protection usage */ |
|||
#define VAEncryptionParameterBufferType ((VABufferType)0x20001) |
|||
|
|||
+#endif // LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
+
|
|||
/**\brief CENC status paramter, used for vendor content protection only. |
|||
* The buffer corresponds to #VACencStatusParameters for va/cp*/ |
|||
#define VACencStatusParameterBufferType ((VABufferType)0x20002) |
|||
|
|||
+#ifdef LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
/** attribute values for VAConfigAttribEncryption */ |
|||
#define VA_ENCRYPTION_TYPE_NONE 0x00000000 |
|||
-#define VA_ENCRYPTION_TYPE_CENC_CBC 0x00000002
|
|||
-#define VA_ENCRYPTION_TYPE_CENC_CTR 0x00000008
|
|||
-#define VA_ENCRYPTION_TYPE_CTR_128 0x00000010
|
|||
-#define VA_ENCRYPTION_TYPE_CBC 0x00000020
|
|||
+#define VA_ENCRYPTION_TYPE_FULLSAMPLE_CBC 0x00000002
|
|||
+#define VA_ENCRYPTION_TYPE_FULLSAMPLE_CTR 0x00000008
|
|||
+#define VA_ENCRYPTION_TYPE_SUBSAMPLE_CTR 0x00000010
|
|||
+#define VA_ENCRYPTION_TYPE_SUBSAMPLE_CBC 0x00000020
|
|||
|
|||
/** attribute values for VAConfigAttribContentProtectionSessionMode */ |
|||
#define VA_PC_SESSION_MODE_NONE 0x00000000 |
|||
@@ -132,18 +136,11 @@ extern "C" {
|
|||
#define VA_PC_SAMPLE_TYPE_FULLSAMPLE 0x00000001 |
|||
#define VA_PC_SAMPLE_TYPE_SUBSAMPLE 0x00000002 |
|||
|
|||
-/** \brief TeeExec Function Codes. */
|
|||
-typedef enum _VA_TEE_EXEC_FUNCTION_ID {
|
|||
- VA_TEE_EXEC_TEE_FUNCID_PASS_THROUGH_NONE = 0x0,
|
|||
-
|
|||
- // 0x40000000~0x400000FFF reserved for TEE Exec GPU function
|
|||
- VA_TEE_EXEC_GPU_FUNCID_ENCRYPTION_BLT = 0x40000000,
|
|||
- VA_TEE_EXEC_GPU_FUNCID_DECRYPTION_BLT = 0x40000001,
|
|||
+#endif // LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
|
|||
- // 0x40001000~0x400001FFF reserved for TEE Exec TEE function
|
|||
- VA_TEE_EXEC_TEE_FUNCID_PASS_THROUGH = 0x40001000,
|
|||
-
|
|||
-} VA_TEE_EXEC_FUNCTION_ID;
|
|||
+/** \brief TeeExec Function Codes. */
|
|||
+#define VA_TEE_EXEC_TEE_FUNCID_HW_UPDATE 0x40000002
|
|||
+#define VA_TEE_EXEC_TEE_FUNCID_IS_SESSION_ALIVE 0x40000103
|
|||
|
|||
/** \brief values for the encryption return status. */ |
|||
typedef enum { |
|||
@@ -159,6 +156,7 @@ typedef enum {
|
|||
VA_ENCRYPTION_STATUS_UNSUPPORT |
|||
} VAEncryptionStatus; |
|||
|
|||
+#ifdef LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
/** \brief structure for encrypted segment info. */ |
|||
typedef struct _VAEncryptionSegmentInfo { |
|||
/** \brief The offset relative to the start of the bitstream input in |
|||
@@ -212,23 +210,12 @@ typedef struct _VAEncryptionParameters {
|
|||
* encrypted, i.e. the CENC or CBC1 scheme is being used. |
|||
*/ |
|||
uint32_t blocks_stripe_clear; |
|||
+ /* Forwards compatibility */
|
|||
+ uint32_t key_blob_size;
|
|||
/** \brief Reserved bytes for future use, must be zero */ |
|||
- uint32_t va_reserved[VA_PADDING_MEDIUM];
|
|||
+ uint32_t va_reserved[VA_PADDING_MEDIUM - sizeof(uint32_t)];
|
|||
} VAEncryptionParameters; |
|||
-
|
|||
-/** \brief structure for VA_TEE_EXEC_GPU_FUNCID_ENCRYPTION_BLT */
|
|||
-typedef struct _VA_PROTECTED_BLT_PARAMS {
|
|||
- uint8_t* src_resource; // The source resource which contains the clear data.
|
|||
- uint8_t*
|
|||
- dst_resource; // The Destination resource. This resource will contain the
|
|||
- // encrypted data. It should be allocated by the caller.
|
|||
- uint32_t width; // The width of the surface in Bytes.
|
|||
- uint32_t height; // The height of the surface in Bytes (pay attention that
|
|||
- // for NV12 the height(Bytes) = 1.5*height(Pixel)).
|
|||
- VAEncryptionParameters*
|
|||
- enc_params; // The encryption parameters as defined by application
|
|||
- void* reserved_extension; // The reserved extension for future BLT operations
|
|||
-} VA_PROTECTED_BLT_PARAMS;
|
|||
+#endif // LEGACY_UPSTREAM_PROTECTED_LIBVA
|
|||
|
|||
/** \brief cenc status parameters, corresponding to |
|||
* #VACencStatusParameterBufferType*/ |
|||
@@ -311,184 +298,6 @@ typedef struct _VACencSliceParameterBufferH264 {
|
|||
uint32_t va_reserved[VA_PADDING_MEDIUM]; |
|||
} VACencSliceParameterBufferH264; |
|||
|
|||
-/**
|
|||
- * \brief Slice parameter for HEVC cenc decode in main & main 10 profiles.
|
|||
- *
|
|||
- * This structure holds information for \c
|
|||
- * slice_segment_header() and nal_unit_header() of the slice as
|
|||
- * defined by the HEVC specification.
|
|||
- *
|
|||
- */
|
|||
-typedef struct _VACencSliceParameterBufferHEVC {
|
|||
- /** \brief Same as the HEVC bitstream syntax element. */
|
|||
- uint8_t nal_unit_type;
|
|||
- /** \brief Corresponds to the HEVC bitstream syntax element.
|
|||
- * Same as nuh_temporal_id_plus1 - 1*/
|
|||
- uint8_t nuh_temporal_id;
|
|||
- /** \brief Slice type.
|
|||
- * Corresponds to HEVC syntax element of the same name. */
|
|||
- uint8_t slice_type;
|
|||
- /** \brief Same as the HEVC bitstream syntax element. */
|
|||
- uint16_t slice_pic_order_cnt_lsb;
|
|||
- /** \brief Indicates EOS_NUT or EOB_NUT is detected in picture. */
|
|||
- uint16_t has_eos_or_eob;
|
|||
-
|
|||
- union {
|
|||
- struct {
|
|||
- /** \brief Same as the HEVC bitstream syntax element */
|
|||
- uint32_t no_output_of_prior_pics_flag : 1;
|
|||
- /** \brief Same as the HEVC bitstream syntax element */
|
|||
- uint32_t pic_output_flag : 1;
|
|||
- /** \brief Same as the HEVC bitstream syntax element */
|
|||
- uint32_t colour_plane_id : 2;
|
|||
- /** \brief Reserved for future use, must be zero */
|
|||
- uint32_t reserved : 19;
|
|||
- } bits;
|
|||
- uint32_t value;
|
|||
- } slice_fields;
|
|||
-
|
|||
- /** \brief Parameters for driver reference frame set */
|
|||
- /**@{*/
|
|||
-
|
|||
- /** \brief number of entries as current before in short-term rps
|
|||
- * Corresponds to NumPocStCurrBefore as the HEVC specification. */
|
|||
- uint8_t num_of_curr_before;
|
|||
- /** \brief number of entries as current after in short-term rps
|
|||
- * Corresponds to NumPocStCurrAfter as the HEVC specification. */
|
|||
- uint8_t num_of_curr_after;
|
|||
- /** \brief number of entries as current total in short-term rps*/
|
|||
- uint8_t num_of_curr_total;
|
|||
- /** \brief number of entries as foll in short-term rps
|
|||
- * Corresponds to NumPocStFoll as the HEVC specification.*/
|
|||
- uint8_t num_of_foll_st;
|
|||
- /** \brief number of entries as current in long-term rps
|
|||
- * Corresponds to NumPocLtCurr as the HEVC specification. */
|
|||
- uint8_t num_of_curr_lt;
|
|||
- /** \brief number of entries as foll in long-term rps
|
|||
- * Corresponds to NumPocLtFoll as the HEVC specification.*/
|
|||
- uint8_t num_of_foll_lt;
|
|||
- /** \brief delta poc as short-term current before
|
|||
- * Corresponds to PocStCurrBefore as the HEVC specification. */
|
|||
- int32_t delta_poc_curr_before[8];
|
|||
- /** \brief delta poc as short-term current after
|
|||
- * Corresponds to PocStCurrAfter, as the HEVC specification.*/
|
|||
- int32_t delta_poc_curr_after[8];
|
|||
- /** \brief delta poc as short-term current total */
|
|||
- int32_t delta_poc_curr_total[8];
|
|||
- /** \brief delta poc as short-term foll
|
|||
- * Corresponds to PocStFoll as the HEVC specification.*/
|
|||
- int32_t delta_poc_foll_st[16];
|
|||
- /** \brief delta poc as long-term current
|
|||
- * Corresponds to PocLtCurr as the HEVC specification.*/
|
|||
- int32_t delta_poc_curr_lt[8];
|
|||
- /** \brief delta poc as long-term foll
|
|||
- * Corresponds to PocLtFoll, as the HEVC specification.*/
|
|||
- int32_t delta_poc_foll_lt[16];
|
|||
- /** \brief delta poc msb present flag
|
|||
- * Same as the HEVC bitstream syntax element. */
|
|||
- uint8_t delta_poc_msb_present_flag[16];
|
|||
- /** \brief long-term reference RPS is used for reference by current picture*/
|
|||
- uint8_t is_lt_curr_total[8];
|
|||
- /** \brief index of reference picture list. [0] is for P and B slice, [1] is
|
|||
- * for B slice*/
|
|||
- uint8_t ref_list_idx[2][16];
|
|||
- /**@}*/
|
|||
- /** \brief Pointer to the next #VACencSliceParameterBufferHEVC element,
|
|||
- * or \c nullptr if there is none.*/
|
|||
- void* next;
|
|||
-
|
|||
- /** \brief Reserved bytes for future use, must be zero */
|
|||
- uint32_t va_reserved[VA_PADDING_MEDIUM];
|
|||
-} VACencSliceParameterBufferHEVC;
|
|||
-
|
|||
-/**
|
|||
- * \brief uncompressed header for VP9 cenc decode
|
|||
- *
|
|||
- * This structure holds information for \c
|
|||
- * uncompressed_header() as defined by the VP9 specification.
|
|||
- *
|
|||
- */
|
|||
-typedef struct _VACencSliceParameterBufferVP9 {
|
|||
- union {
|
|||
- struct {
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t profile : 2;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t show_existing_frame_flag : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t frame_to_show_map_idx : 3;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t frame_type : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t show_frame : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t error_resilient_mode : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t intra_only : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t ten_or_twelve_bit : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t color_space : 3;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t color_range : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t subsampling_x : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t subsampling_y : 1;
|
|||
- /** \brief Corresponds to ref_frame_idx[0]
|
|||
- * as the VP9 specification */
|
|||
- uint32_t ref_frame_idx0 : 3;
|
|||
- /** \brief Corresponds to ref_frame_sign_bias[LAST_FRAME]
|
|||
- * as the VP9 specification */
|
|||
- uint32_t ref_frame_sign_bias0 : 1;
|
|||
- /** \brief Corresponds to ref_frame_idx[1]
|
|||
- * as the VP9 specification */
|
|||
- uint32_t ref_frame_idx1 : 3;
|
|||
- /** \brief Corresponds to ref_frame_sign_bias[GOLDEN_FRAME]
|
|||
- * as the VP9 specification */
|
|||
- uint32_t ref_frame_sign_bias1 : 1;
|
|||
- /** \brief Corresponds to ref_frame_idx[2]
|
|||
- * as the VP9 specification */
|
|||
- uint32_t ref_frame_idx2 : 3;
|
|||
- /** \brief Corresponds to ref_frame_sign_bias[ALTREF_FRAME]
|
|||
- * as the VP9 specification */
|
|||
- uint32_t ref_frame_sign_bias2 : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t frame_parallel_decoding_mode : 1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint32_t render_and_frame_size_different : 1;
|
|||
- /** \brief Reserved for future use, must be zero */
|
|||
- uint32_t reserved : 1;
|
|||
- } bits;
|
|||
- uint32_t value;
|
|||
- } header_fields;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint16_t frame_width_minus1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint16_t frame_height_minus1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint16_t render_width_minus1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint16_t render_height_minus1;
|
|||
- /** \brief Same as the VP9 bitstream syntax element. */
|
|||
- uint8_t refresh_frame_flags;
|
|||
- /** \brief Parameters for super frame*/
|
|||
- /**@{*/
|
|||
- /** \brief Superframe index, from 0 to frames_in_superframe_minus_1.
|
|||
- * as the VP9 specification */
|
|||
- uint8_t sf_index;
|
|||
- /** \brief Superframe size, corresponds to frame_sizes[ sf_index ]
|
|||
- * as the VP9 specification */
|
|||
- uint32_t sf_frame_size;
|
|||
- /**@}*/
|
|||
- /** \brief Pointer to the next #VACencSliceParameterBufferVP9 element,
|
|||
- * or \c nullptr if there is none.*/
|
|||
- void* next;
|
|||
-
|
|||
- /** \brief Reserved bytes for future use, must be zero */
|
|||
- uint32_t va_reserved[VA_PADDING_MEDIUM];
|
|||
-} VACencSliceParameterBufferVP9;
|
|||
-
|
|||
/** \brief Cenc Slice Buffer Type*/ |
|||
typedef enum { |
|||
/** \brief Parsed slice parameters \c VACencSliceParameterBuffer* */ |
|||
diff --git a/tools/metrics/histograms/enums.xml b/tools/metrics/histograms/enums.xml
|
|||
index e88db8a3f1201..c1bd0d7db925f 100644
|
|||
--- a/tools/metrics/histograms/enums.xml
|
|||
+++ b/tools/metrics/histograms/enums.xml
|
|||
@@ -77050,7 +77050,7 @@ Full version information for the fingerprint enum values:
|
|||
<int value="26" label="vaDestroyProtectedSession()"/> |
|||
<int value="27" label="vaAttachProtectedSession()"/> |
|||
<int value="28" label="vaDetachProtectedSession()"/> |
|||
- <int value="29" label="vaProtectedSessionHwUpdate()"/>
|
|||
+ <int value="29" label="vaProtectedSessionHwUpdate() (deprecated)"/>
|
|||
<int value="30" label="kVAProtectedSessionExecute()"/> |
|||
<int value="31" label="Other VA functions"/> |
|||
</enum> |
@ -1,55 +0,0 @@ |
|||
diff -up chromium-86.0.4240.75/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc.epel7-kcmp chromium-86.0.4240.75/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
|
|||
--- chromium-86.0.4240.75/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc.epel7-kcmp 2020-10-19 19:05:20.249786458 -0400
|
|||
+++ chromium-86.0.4240.75/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc 2020-10-20 10:50:21.560402023 -0400
|
|||
@@ -6,7 +6,24 @@
|
|||
|
|||
#include <errno.h> |
|||
#include <fcntl.h> |
|||
-#include <linux/kcmp.h>
|
|||
+#ifndef KCMP_FILE
|
|||
+#define KCMP_FILE 0
|
|||
+#endif
|
|||
+#ifndef F_LINUX_SPECIFIC_BASE
|
|||
+#define F_LINUX_SPECIFIC_BASE 1024
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SEAL
|
|||
+#define F_SEAL_SEAL 0x0001
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SHRINK
|
|||
+#define F_SEAL_SHRINK 0x0002
|
|||
+#endif
|
|||
+#ifndef F_SEAL_GROW
|
|||
+#define F_SEAL_GROW 0x0004
|
|||
+#endif
|
|||
+#ifndef F_ADD_SEALS
|
|||
+#define F_ADD_SEALS (F_LINUX_SPECIFIC_BASE + 9)
|
|||
+#endif
|
|||
#include <sys/socket.h> |
|||
|
|||
// Some arch's (arm64 for instance) unistd.h don't pull in symbols used here |
|||
diff -up chromium-86.0.4240.75/sandbox/policy/linux/bpf_gpu_policy_linux.cc.epel7-kcmp chromium-86.0.4240.75/sandbox/policy/linux/bpf_gpu_policy_linux.cc
|
|||
--- chromium-86.0.4240.75/sandbox/policy/linux/bpf_gpu_policy_linux.cc.epel7-kcmp 2020-10-20 11:58:00.449812627 -0400
|
|||
+++ chromium-86.0.4240.75/sandbox/policy/linux/bpf_gpu_policy_linux.cc 2020-10-20 11:58:32.919071919 -0400
|
|||
@@ -22,6 +22,22 @@
|
|||
#include "sandbox/policy/linux/sandbox_linux.h" |
|||
#include "sandbox/policy/linux/sandbox_seccomp_bpf_linux.h" |
|||
|
|||
+#ifndef F_LINUX_SPECIFIC_BASE
|
|||
+#define F_LINUX_SPECIFIC_BASE 1024
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SEAL
|
|||
+#define F_SEAL_SEAL 0x0001
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SHRINK
|
|||
+#define F_SEAL_SHRINK 0x0002
|
|||
+#endif
|
|||
+#ifndef F_SEAL_GROW
|
|||
+#define F_SEAL_GROW 0x0004
|
|||
+#endif
|
|||
+#ifndef F_ADD_SEALS
|
|||
+#define F_ADD_SEALS (F_LINUX_SPECIFIC_BASE + 9)
|
|||
+#endif
|
|||
+
|
|||
using sandbox::bpf_dsl::Allow; |
|||
using sandbox::bpf_dsl::Arg; |
|||
using sandbox::bpf_dsl::Error; |
@ -1,25 +0,0 @@ |
|||
From c06ddc4935bf1394812c011ce5d93898ccc8a53a Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Tue, 09 Feb 2021 19:22:57 +0000 |
|||
Subject: [PATCH] IWYU: add ctime for std::time |
|||
|
|||
Bug: None |
|||
Change-Id: I8bdae43209984242b9f5e538d74ece4409b65e3c |
|||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2679610 |
|||
Reviewed-by: Katie Dektar <[email protected]> |
|||
Commit-Queue: Katie Dektar <[email protected]> |
|||
Cr-Commit-Position: refs/heads/[email protected]{#852287} |
|||
---
|
|||
|
|||
diff --git a/ui/accessibility/ax_tree_serializer.h b/ui/accessibility/ax_tree_serializer.h
|
|||
index ddbbdcd..1790e3b 100644
|
|||
--- a/ui/accessibility/ax_tree_serializer.h
|
|||
+++ b/ui/accessibility/ax_tree_serializer.h
|
|||
@@ -8,6 +8,7 @@
|
|||
#include <stddef.h> |
|||
#include <stdint.h> |
|||
|
|||
+#include <ctime>
|
|||
#include <ostream> |
|||
#include <unordered_map> |
|||
#include <unordered_set> |
@ -1,28 +0,0 @@ |
|||
From 5a56bfe8d281250a1deee0d116a9fcde65b9c29a Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Fri, 15 Jan 2021 18:37:05 +0000 |
|||
Subject: [PATCH] IWYU: add various missing includes |
|||
|
|||
std::weak_ptr and std::shared_ptr require map |
|||
*int*_t types require cstdint |
|||
---
|
|||
third_party/dawn/src/dawn_wire/client/Device.h | 2 ++ |
|||
1 file changed, 2 insertions(+) |
|||
|
|||
diff --git a/third_party/dawn/src/dawn_wire/client/Device.h b/third_party/dawn/src/dawn_wire/client/Device.h
|
|||
index 3f16700..1082549 100644
|
|||
--- a/third_party/dawn/src/dawn_wire/client/Device.h
|
|||
+++ b/third_party/dawn/src/dawn_wire/client/Device.h
|
|||
@@ -22,7 +22,9 @@
|
|||
#include "dawn_wire/client/ApiObjects_autogen.h" |
|||
#include "dawn_wire/client/ObjectBase.h" |
|||
|
|||
+#include <cstdint>
|
|||
#include <map> |
|||
+#include <memory>
|
|||
|
|||
namespace dawn_wire { namespace client { |
|||
|
|||
--
|
|||
2.26.2 |
|||
|
@ -1,29 +0,0 @@ |
|||
From 7cd4eab0bfca6192f14d6143410e1ae774eb1c29 Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Thu, 31 Dec 2020 11:57:22 +0000 |
|||
Subject: [PATCH] GCC: do not pass unique_ptr to DCHECK_NE, but the actual |
|||
pointer |
|||
|
|||
DCHECK_NE comparison requires CheckOpValueStr to be defined for the |
|||
type, or providing an output stream operator. A unique_ptr does not |
|||
provide any. USE DCHECK instead. |
|||
---
|
|||
net/third_party/quiche/src/quic/core/quic_path_validator.cc | 2 +- |
|||
1 file changed, 1 insertion(+), 1 deletion(-) |
|||
|
|||
diff --git a/net/third_party/quiche/src/quic/core/quic_path_validator.cc b/net/third_party/quiche/src/quic/core/quic_path_validator.cc
|
|||
index 0722216..fb2aeaf 100644
|
|||
--- a/net/third_party/quiche/src/quic/core/quic_path_validator.cc
|
|||
+++ b/net/third_party/quiche/src/quic/core/quic_path_validator.cc
|
|||
@@ -68,7 +68,7 @@ void QuicPathValidator::OnPathResponse(const QuicPathFrameBuffer& probing_data,
|
|||
void QuicPathValidator::StartPathValidation( |
|||
std::unique_ptr<QuicPathValidationContext> context, |
|||
std::unique_ptr<ResultDelegate> result_delegate) { |
|||
- DCHECK_NE(nullptr, context);
|
|||
+ DCHECK(context);
|
|||
QUIC_DLOG(INFO) << "Start validating path " << *context |
|||
<< " via writer: " << context->WriterToUse(); |
|||
if (path_context_ != nullptr) { |
|||
--
|
|||
2.26.2 |
|||
|
@ -1,26 +0,0 @@ |
|||
From 1ee06c3678a85d158eb82d4af438d1e43a4c814e Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Sun, 6 Dec 2020 16:14:17 +0000 |
|||
Subject: [PATCH] GCC: change make_visitor visibility to public |
|||
|
|||
GCC complains that make_visitor is used in private context from |
|||
inner Iterator class. |
|||
---
|
|||
net/third_party/quiche/src/quic/core/quic_interval_set.h | 1 - |
|||
1 file changed, 1 deletion(-) |
|||
|
|||
diff --git a/net/third_party/quiche/src/quic/core/quic_interval_set.h b/net/third_party/quiche/src/quic/core/quic_interval_set.h
|
|||
index af64e29..7ee8978 100644
|
|||
--- a/net/third_party/quiche/src/quic/core/quic_interval_set.h
|
|||
+++ b/net/third_party/quiche/src/quic/core/quic_interval_set.h
|
|||
@@ -1874,7 +1874,6 @@ class QUIC_NO_EXPORT QuicIntervalSet {
|
|||
return absl::visit([&](auto& s) { return s.Contains(min, max); }, qiset_); |
|||
} |
|||
|
|||
- private:
|
|||
template <class A, class B, class C> |
|||
struct overloader : A, B, C { |
|||
overloader(A a, B b, C c) : A(a), B(b), C(c) {} |
|||
--
|
|||
2.26.2 |
|||
|
@ -1,38 +0,0 @@ |
|||
diff --git a/third_party/skia/include/effects/SkImageFilters.h b/third_party/skia/include/effects/SkImageFilters.h
|
|||
index 04cce0a..d06b007 100644
|
|||
--- a/third_party/skia/include/effects/SkImageFilters.h
|
|||
+++ b/third_party/skia/include/effects/SkImageFilters.h
|
|||
@@ -23,6 +23,9 @@ class SkColorFilter;
|
|||
class SkPaint; |
|||
class SkRegion; |
|||
|
|||
+constexpr SkRect kNoCropRect = {SK_ScalarNegativeInfinity, SK_ScalarNegativeInfinity,
|
|||
+ SK_ScalarInfinity, SK_ScalarInfinity};
|
|||
+
|
|||
// A set of factory functions providing useful SkImageFilter effects. For image filters that take an |
|||
// input filter, providing nullptr means it will automatically use the dynamic source image. This |
|||
// source depends on how the filter is applied, but is either the contents of a saved layer when |
|||
@@ -33,8 +36,6 @@ public:
|
|||
// to those types as a crop rect for the image filter factories. It's not intended to be used |
|||
// directly. |
|||
struct CropRect { |
|||
- static constexpr SkRect kNoCropRect = {SK_ScalarNegativeInfinity, SK_ScalarNegativeInfinity,
|
|||
- SK_ScalarInfinity, SK_ScalarInfinity};
|
|||
CropRect() : fCropRect(kNoCropRect) {} |
|||
// Intentionally not explicit so callers don't have to use this type but can use SkIRect or |
|||
// SkRect as desired. |
|||
diff --git a/third_party/skia/src/effects/imagefilters/SkImageFilters.cpp b/third_party/skia/src/effects/imagefilters/SkImageFilters.cpp
|
|||
index 5290b00..fb97fc1 100644
|
|||
--- a/third_party/skia/src/effects/imagefilters/SkImageFilters.cpp
|
|||
+++ b/third_party/skia/src/effects/imagefilters/SkImageFilters.cpp
|
|||
@@ -47,10 +47,6 @@ static SkImageFilter::CropRect to_legacy_crop_rect(const SkImageFilters::CropRec
|
|||
: SkImageFilter::CropRect(SkRect::MakeEmpty(), 0x0); |
|||
} |
|||
|
|||
-// Allow kNoCropRect to be referenced (for certain builds, e.g. macOS libFuzzer chromium target,
|
|||
-// see crbug.com/1139725)
|
|||
-constexpr SkRect SkImageFilters::CropRect::kNoCropRect;
|
|||
-
|
|||
void SkImageFilters::RegisterFlattenables() { |
|||
SkAlphaThresholdFilter::RegisterFlattenables(); |
|||
SkArithmeticImageFilter::RegisterFlattenables(); |
@ -0,0 +1,29 @@ |
|||
From 644e45c7fa836d628de39badc3a168f3d7e9e9dc Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Thu, 25 Feb 2021 14:28:40 +0000 |
|||
Subject: [PATCH] GCC: remove extra qualification from CrossThreadCopier |
|||
|
|||
Extra qualification is invalid C++ and also not required here, |
|||
because it is already inside namespace WTF. |
|||
---
|
|||
.../blink/renderer/platform/graphics/resource_id_traits.h | 4 ++-- |
|||
1 file changed, 2 insertions(+), 2 deletions(-) |
|||
|
|||
diff --git a/third_party/blink/renderer/platform/graphics/resource_id_traits.h b/third_party/blink/renderer/platform/graphics/resource_id_traits.h
|
|||
index b370d7c..565dfee 100644
|
|||
--- a/third_party/blink/renderer/platform/graphics/resource_id_traits.h
|
|||
+++ b/third_party/blink/renderer/platform/graphics/resource_id_traits.h
|
|||
@@ -15,8 +15,8 @@
|
|||
namespace WTF { |
|||
|
|||
template <> |
|||
-struct WTF::CrossThreadCopier<viz::ResourceId>
|
|||
- : public WTF::CrossThreadCopierPassThrough<viz::ResourceId> {};
|
|||
+struct CrossThreadCopier<viz::ResourceId>
|
|||
+ : public CrossThreadCopierPassThrough<viz::ResourceId> {};
|
|||
|
|||
template <> |
|||
struct HashTraits<viz::ResourceId> : GenericHashTraits<viz::ResourceId> { |
|||
--
|
|||
2.26.2 |
|||
|
@ -0,0 +1,24 @@ |
|||
From 30dcae908492a3ec811b5f5b9f518d792a01da38 Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Sun, 28 Feb 2021 12:36:04 +0000 |
|||
Subject: [PATCH] IWYU: include missing cstring for strlen |
|||
|
|||
---
|
|||
.../translate/core/language_detection/ngram_hash_ops_utils.cc | 1 + |
|||
1 file changed, 1 insertion(+) |
|||
|
|||
diff --git a/components/translate/core/language_detection/ngram_hash_ops_utils.cc b/components/translate/core/language_detection/ngram_hash_ops_utils.cc
|
|||
index cf91033..dd03a3d 100644
|
|||
--- a/components/translate/core/language_detection/ngram_hash_ops_utils.cc
|
|||
+++ b/components/translate/core/language_detection/ngram_hash_ops_utils.cc
|
|||
@@ -4,6 +4,7 @@
|
|||
|
|||
#include "components/translate/core/language_detection/ngram_hash_ops_utils.h" |
|||
|
|||
+#include <cstring>
|
|||
#include <vector> |
|||
|
|||
#include "third_party/utf/src/include/utf.h" |
|||
--
|
|||
2.26.2 |
|||
|
@ -0,0 +1,28 @@ |
|||
From b1669139f475ebe39ded6f7905f4c901f17eef83 Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Wed, 24 Feb 2021 07:38:37 +0000 |
|||
Subject: [PATCH] add missing static constexpr member definition |
|||
|
|||
C++14 requires to definition of static constexpr members to |
|||
emit a linker symbol. |
|||
---
|
|||
.../angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp | 3 +++ |
|||
1 file changed, 3 insertions(+) |
|||
|
|||
diff --git a/third_party/angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp b/third_party/angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp
|
|||
index 56b46e6..8f8158c 100644
|
|||
--- a/third_party/angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp
|
|||
+++ b/third_party/angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp
|
|||
@@ -2069,6 +2069,9 @@ class SpirvTransformFeedbackCodeGenerator final : angle::NonCopyable
|
|||
spirv::IdRef mTransformFeedbackExtensionPositionId; |
|||
}; |
|||
|
|||
+constexpr size_t SpirvTransformFeedbackCodeGenerator::kXfbDecorationCount;
|
|||
+constexpr spv::Decoration SpirvTransformFeedbackCodeGenerator::kXfbDecorations[kXfbDecorationCount];
|
|||
+
|
|||
void SpirvTransformFeedbackCodeGenerator::visitVariable(const ShaderInterfaceVariableInfo &info, |
|||
gl::ShaderType shaderType, |
|||
const spirv::LiteralString &name, |
|||
--
|
|||
2.26.2 |
|||
|
@ -0,0 +1,24 @@ |
|||
From 980ae0fbe6d985efce517c8f6c9aa139b076322b Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Sun, 28 Feb 2021 12:55:19 +0000 |
|||
Subject: [PATCH] IWYU: add missing cstdint for uint32_t |
|||
|
|||
---
|
|||
.../translate/core/language_detection/quantization_utils.h | 1 + |
|||
1 file changed, 1 insertion(+) |
|||
|
|||
diff --git a/components/translate/core/language_detection/quantization_utils.h b/components/translate/core/language_detection/quantization_utils.h
|
|||
index eb8f6d1..699a488 100644
|
|||
--- a/components/translate/core/language_detection/quantization_utils.h
|
|||
+++ b/components/translate/core/language_detection/quantization_utils.h
|
|||
@@ -7,6 +7,7 @@
|
|||
|
|||
#include <algorithm> |
|||
#include <cmath> |
|||
+#include <cstdint>
|
|||
|
|||
namespace translate { |
|||
|
|||
--
|
|||
2.26.2 |
|||
|
@ -0,0 +1,24 @@ |
|||
From 714092f336bb14d2fcc27396ec323b3d843bb962 Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Thu, 4 Mar 2021 15:05:46 +0000 |
|||
Subject: [PATCH] IWYU: include limits for std::numeric_limits |
|||
|
|||
---
|
|||
third_party/ruy/src/ruy/block_map.cc | 1 + |
|||
1 file changed, 1 insertion(+) |
|||
|
|||
diff --git a/third_party/ruy/src/ruy/block_map.cc b/third_party/ruy/src/ruy/block_map.cc
|
|||
index 44e5039..a7a7559 100644
|
|||
--- a/third_party/ruy/src/ruy/block_map.cc
|
|||
+++ b/third_party/ruy/src/ruy/block_map.cc
|
|||
@@ -17,6 +17,7 @@ limitations under the License.
|
|||
|
|||
#include <algorithm> |
|||
#include <cstdint> |
|||
+#include <limits>
|
|||
|
|||
#ifdef RUY_MAKEBLOCKMAP_DEBUG |
|||
#include <cstdio> |
|||
--
|
|||
2.26.2 |
|||
|
@ -1,9 +1,9 @@ |
|||
diff -up chromium-89.0.4389.82/chrome/browser/component_updater/registration.cc.widevine-no-download chromium-89.0.4389.82/chrome/browser/component_updater/registration.cc
|
|||
--- chromium-89.0.4389.82/chrome/browser/component_updater/registration.cc.widevine-no-download 2021-03-18 14:10:27.606759188 -0400
|
|||
+++ chromium-89.0.4389.82/chrome/browser/component_updater/registration.cc 2021-03-18 14:10:41.792833905 -0400
|
|||
diff -up chromium-90.0.4430.72/chrome/browser/component_updater/registration.cc.widevine-no-download chromium-90.0.4430.72/chrome/browser/component_updater/registration.cc
|
|||
--- chromium-90.0.4430.72/chrome/browser/component_updater/registration.cc.widevine-no-download 2021-04-16 15:49:21.010870111 -0400
|
|||
+++ chromium-90.0.4430.72/chrome/browser/component_updater/registration.cc 2021-04-16 15:57:12.153555913 -0400
|
|||
@@ -96,10 +96,6 @@ void RegisterComponentsForUpdate(bool is
|
|||
// TODO(crbug.com/1069814): Remove after 2021-10-01. |
|||
CleanUpPepperFlashComponent(); |
|||
CleanUpPepperFlashComponent(profile_path); |
|||
|
|||
-#if BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)
|
|||
- RegisterWidevineCdmComponent(cus);
|
@ -0,0 +1,81 @@ |
|||
diff -up chromium-90.0.4430.85/mojo/core/channel_linux.cc.epel7-kcmp chromium-90.0.4430.85/mojo/core/channel_linux.cc
|
|||
--- chromium-90.0.4430.85/mojo/core/channel_linux.cc.epel7-kcmp 2021-04-27 11:42:46.207245608 -0400
|
|||
+++ chromium-90.0.4430.85/mojo/core/channel_linux.cc 2021-04-27 11:43:21.941841419 -0400
|
|||
@@ -37,6 +37,22 @@
|
|||
#include "mojo/core/core.h" |
|||
#include "mojo/core/embedder/features.h" |
|||
|
|||
+#ifndef F_LINUX_SPECIFIC_BASE
|
|||
+#define F_LINUX_SPECIFIC_BASE 1024
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SEAL
|
|||
+#define F_SEAL_SEAL 0x0001
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SHRINK
|
|||
+#define F_SEAL_SHRINK 0x0002
|
|||
+#endif
|
|||
+#ifndef F_SEAL_GROW
|
|||
+#define F_SEAL_GROW 0x0004
|
|||
+#endif
|
|||
+#ifndef F_ADD_SEALS
|
|||
+#define F_ADD_SEALS (F_LINUX_SPECIFIC_BASE + 9)
|
|||
+#endif
|
|||
+
|
|||
namespace mojo { |
|||
namespace core { |
|||
|
|||
diff -up chromium-90.0.4430.85/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc.epel7-kcmp chromium-90.0.4430.85/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
|
|||
--- chromium-90.0.4430.85/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc.epel7-kcmp 2021-04-20 14:58:36.000000000 -0400
|
|||
+++ chromium-90.0.4430.85/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc 2021-04-26 11:13:36.743346891 -0400
|
|||
@@ -6,7 +6,24 @@
|
|||
|
|||
#include <errno.h> |
|||
#include <fcntl.h> |
|||
-#include <linux/kcmp.h>
|
|||
+#ifndef KCMP_FILE
|
|||
+#define KCMP_FILE 0
|
|||
+#endif
|
|||
+#ifndef F_LINUX_SPECIFIC_BASE
|
|||
+#define F_LINUX_SPECIFIC_BASE 1024
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SEAL
|
|||
+#define F_SEAL_SEAL 0x0001
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SHRINK
|
|||
+#define F_SEAL_SHRINK 0x0002
|
|||
+#endif
|
|||
+#ifndef F_SEAL_GROW
|
|||
+#define F_SEAL_GROW 0x0004
|
|||
+#endif
|
|||
+#ifndef F_ADD_SEALS
|
|||
+#define F_ADD_SEALS (F_LINUX_SPECIFIC_BASE + 9)
|
|||
+#endif
|
|||
#include <sys/socket.h> |
|||
|
|||
// Some arch's (arm64 for instance) unistd.h don't pull in symbols used here |
|||
diff -up chromium-90.0.4430.85/sandbox/policy/linux/bpf_gpu_policy_linux.cc.epel7-kcmp chromium-90.0.4430.85/sandbox/policy/linux/bpf_gpu_policy_linux.cc
|
|||
--- chromium-90.0.4430.85/sandbox/policy/linux/bpf_gpu_policy_linux.cc.epel7-kcmp 2021-04-20 14:58:36.000000000 -0400
|
|||
+++ chromium-90.0.4430.85/sandbox/policy/linux/bpf_gpu_policy_linux.cc 2021-04-26 11:13:36.744346907 -0400
|
|||
@@ -23,6 +23,22 @@
|
|||
#include "sandbox/policy/linux/sandbox_linux.h" |
|||
#include "sandbox/policy/linux/sandbox_seccomp_bpf_linux.h" |
|||
|
|||
+#ifndef F_LINUX_SPECIFIC_BASE
|
|||
+#define F_LINUX_SPECIFIC_BASE 1024
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SEAL
|
|||
+#define F_SEAL_SEAL 0x0001
|
|||
+#endif
|
|||
+#ifndef F_SEAL_SHRINK
|
|||
+#define F_SEAL_SHRINK 0x0002
|
|||
+#endif
|
|||
+#ifndef F_SEAL_GROW
|
|||
+#define F_SEAL_GROW 0x0004
|
|||
+#endif
|
|||
+#ifndef F_ADD_SEALS
|
|||
+#define F_ADD_SEALS (F_LINUX_SPECIFIC_BASE + 9)
|
|||
+#endif
|
|||
+
|
|||
using sandbox::bpf_dsl::Allow; |
|||
using sandbox::bpf_dsl::Arg; |
|||
using sandbox::bpf_dsl::Error; |
@ -1,4 +1,5 @@ |
|||
%global obs 0 |
|||
%global ninja_verbose 0 |
|||
|
|||
%define _lto_cflags %{nil} |
|||
|
|||
@ -30,9 +31,15 @@ |
|||
# Fancy build status, so we at least know, where we are.. |
|||
# %1 where |
|||
# %2 what |
|||
%if %{ninja_verbose} |
|||
%global build_target() \ |
|||
export NINJA_STATUS="[%2:%f/%t] " ; \ |
|||
../depot_tools/ninja -j %{numjobs} -C '%1' -vvv '%2' |
|||
%else |
|||
%global build_target() \ |
|||
export NINJA_STATUS="[%2:%f/%t] " ; \ |
|||
../depot_tools/ninja -j %{numjobs} -C '%1' '%2' |
|||
%endif |
|||
|
|||
# We'd like to always have this on... |
|||
# ... but the libva in EL7 is too old. |
|||
@ -169,18 +176,18 @@ BuildRequires: libicu-devel >= 5.4 |
|||
#Build with debugging symbols |
|||
%global debug_pkg 0 |
|||
|
|||
%global majorversion 89 |
|||
%global majorversion 90 |
|||
%global revision 1 |
|||
|
|||
# Depot tools revision |
|||
%global depot_tools_revision 428143ee24c5f084c8dfb38cd17f07b4f7ba9bf7 |
|||
%global depot_tools_revision 7d690053cbb9914e0c014ec10fe181bfcd6ec2dc |
|||
|
|||
%if %{freeworld} |
|||
Name: ungoogled-chromium%{nsuffix} |
|||
%else |
|||
Name: ungoogled-chromium |
|||
%endif |
|||
Version: %{majorversion}.0.4389.114 |
|||
Version: %{majorversion}.0.4430.93 |
|||
Release: 1%{?dist}.%{revision} |
|||
%if %{?freeworld} |
|||
# chromium-freeworld |
|||
@ -231,17 +238,16 @@ Patch57: chromium-89.0.4389.72-missing-cstring-header.patch |
|||
# prepare for using system ffmpeg (clean) |
|||
# http://svnweb.mageia.org/packages/cauldron/chromium-browser-stable/current/SOURCES/chromium-53-ffmpeg-no-deprecation-errors.patch?view=markup |
|||
Patch58: chromium-53-ffmpeg-no-deprecation-errors.patch |
|||
# https://github.com/stha09/chromium-patches/blob/chromium-89-patchset-7/chromium-89-dawn-include.patch |
|||
Patch60: chromium-89-dawn-include.patch |
|||
# https://github.com/stha09/chromium-patches/blob/chromium-89-patchset-7/chromium-89-quiche-dcheck.patch |
|||
Patch61: chromium-89-quiche-dcheck.patch |
|||
# https://github.com/stha09/chromium-patches/blob/chromium-89-patchset-7/chromium-89-quiche-private.patch |
|||
Patch62: chromium-89-quiche-private.patch |
|||
# https://github.com/stha09/chromium-patches/blob/chromium-89-patchset-7/chromium-89-skia-CropRect.patch |
|||
Patch63: chromium-89-skia-CropRect.patch |
|||
# https://github.com/stha09/chromium-patches/blob/chromium-89-patchset-7/chromium-89-AXTreeSerializer-include.patch |
|||
Patch64: chromium-89-AXTreeSerializer-include.patch |
|||
|
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-90-angle-constexpr.patch |
|||
Patch59: chromium-90-angle-constexpr.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-90-CrossThreadCopier-qualification.patch |
|||
Patch60: chromium-90-CrossThreadCopier-qualification.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-90-quantization_utils-include.patch |
|||
Patch61: chromium-90-quantization_utils-include.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-90-ruy-include.patch |
|||
Patch62: chromium-90-ruy-include.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-90-TokenizedOutput-include.patch |
|||
Patch63: chromium-90-TokenizedOutput-include.patch |
|||
|
|||
# Silence GCC warnings during gn compile |
|||
Patch65: chromium-84.0.4147.105-gn-gcc-cleanup.patch |
|||
@ -253,30 +259,27 @@ Patch67: chromium-84.0.4147.125-i686-fix_textrels.patch |
|||
Patch68: chromium-84.0.4147.125-aarch64-clearkeycdm-binutils-workaround.patch |
|||
# Fix sandbox code to properly handle the new way that glibc handles fstat in Fedora 34+ |
|||
# Thanks to Kevin Kofler for the fix. |
|||
Patch75: chromium-88.0.4324.96-fstatfix.patch |
|||
Patch75: chromium-90.0.4430.72-fstatfix.patch |
|||
# Rawhide (f35) glibc defines SIGSTKSZ as a long instead of a constant |
|||
Patch76: chromium-88.0.4324.182-rawhide-gcc-std-max-fix.patch |
|||
# Fix symbol visibility with gcc on swiftshader's libEGL |
|||
Patch77: chromium-88.0.4324.182-gcc-fix-swiftshader-libEGL-visibility.patch |
|||
# Include support for futex_time64 (64bit time on 32bit platforms) |
|||
# https://chromium.googlesource.com/chromium/src/+/955a586c63c4f99fb734e44221db63f5b2ca25a9%5E%21/#F0 |
|||
Patch78: chromium-89.0.4389.82-support-futex_time64.patch |
|||
Patch78: chromium-89.0.4389.82-support-futex_time64.patch |
|||
# Do not download proprietary widevine module in the background (thanks Debian) |
|||
Patch79: chromium-89.0.4389.82-widevine-no-download.patch |
|||
Patch79: chromium-90.0.4430.72-widevine-no-download.patch |
|||
# Fix crashes with components/cast_* |
|||
# Thanks to Gentoo |
|||
# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/chromium-89-EnumTable-crash.patch |
|||
Patch80: chromium-89-EnumTable-crash.patch |
|||
# Fix build issues with newer libva |
|||
# https://github.com/chromium/chromium/commit/7ae60470cdb0bea4548a0f5e8271b359f9450c79.patch |
|||
Patch81: 7ae60470cdb0bea4548a0f5e8271b359f9450c79.patch |
|||
Patch80: https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/chromium-89-EnumTable-crash.patch |
|||
|
|||
|
|||
# Use lstdc++ on EPEL7 only |
|||
Patch101: chromium-75.0.3770.100-epel7-stdc++.patch |
|||
# el7 only patch |
|||
Patch102: chromium-80.0.3987.132-el7-noexcept.patch |
|||
# No linux/kcmp.h on EPEL7 |
|||
Patch103: chromium-86.0.4240.75-epel7-no-kcmp-h.patch |
|||
Patch103: chromium-90.0.4430.85-epel7-no-kcmp-h.patch |
|||
# Use old cups (chromium's code workaround breaks on gcc) |
|||
# Revert: https://github.com/chromium/chromium/commit/c3213f8779ddc427e89d982514185ed5e4c94e91 |
|||
Patch104: chromium-84.0.4147.89-epel7-old-cups.patch |
|||
@ -289,8 +292,6 @@ Patch106: chromium-77-clang.patch |
|||
# libdrm on EL7 is rather old and chromium assumes newer |
|||
# This gets us by for now |
|||
Patch108: chromium-85.0.4183.83-el7-old-libdrm.patch |
|||
# EL-7 does not have sys/random.h |
|||
Patch109: chromium-87.0.4280.66-el7-no-sys-random.patch |
|||
|
|||
# VAAPI |
|||
# Upstream turned VAAPI on in Linux in 86 |
|||
@ -354,7 +355,7 @@ Source20: https://www.x.org/releases/individual/proto/xcb-proto-1.14.tar.xz |
|||
Source21: %{name}.appdata.xml |
|||
|
|||
# ungoogled-chromium source |
|||
%global ungoogled_chromium_revision 89.0.4389.114-1 |
|||
%global ungoogled_chromium_revision 90.0.4430.93-1 |
|||
Source300: https://github.com/Eloston/ungoogled-chromium/archive/%{ungoogled_chromium_revision}/ungoogled-chromium-%{ungoogled_chromium_revision}.tar.gz |
|||
|
|||
# We can assume gcc and binutils. |
|||
@ -417,7 +418,7 @@ BuildRequires: pulseaudio-libs-devel |
|||
|
|||
# For screen sharing on Wayland, currently Fedora only thing - no epel |
|||
%if 0%{?fedora} |
|||
BuildRequires: pkgconfig(libpipewire-0.2) |
|||
BuildRequires: pkgconfig(libpipewire-0.3) |
|||
%endif |
|||
|
|||
# for /usr/bin/appstream-util |
|||
@ -480,7 +481,7 @@ BuildRequires: libva-devel |
|||
BuildRequires: libwebp-devel |
|||
%endif |
|||
BuildRequires: libxslt-devel |
|||
BuildRequires: libxshmfence-devel |
|||
BuildRequires: libxshmfence-devel |
|||
# Same here, it seems. |
|||
# BuildRequires: libyuv-devel |
|||
BuildRequires: mesa-libGL-devel |
|||
@ -566,11 +567,12 @@ BuildRequires: google-noto-sans-khmer-fonts |
|||
BuildRequires: google-noto-emoji-color-fonts |
|||
%if 0%{?fedora} >= 30 |
|||
BuildRequires: google-noto-sans-symbols2-fonts |
|||
BuildRequires: google-noto-sans-tibetan-fonts |
|||
%else |
|||
Source114: https://github.com/googlefonts/noto-fonts/raw/master/unhinted/ttf/NotoSansSymbols2/NotoSansSymbols2-Regular.ttf |
|||
Source115: NotoSansTibetan-Regular.ttf |
|||
%endif |
|||
# There used to be a copy of this font file here, but it looks like NotoSansTibetan is no more. |
|||
# And yet, the chromium code still wants it. |
|||
Source115: NotoSansTibetan-Regular.ttf |
|||
%endif |
|||
# using the built from source version on aarch64 |
|||
BuildRequires: ninja-build |
|||
@ -700,15 +702,16 @@ ln -s depot_tools-%{depot_tools_revision} ../depot_tools |
|||
%patch56 -p1 -b .missing-cstdint |
|||
%patch57 -p1 -b .missing-cstring |
|||
%patch58 -p1 -b .ffmpeg-deprecations |
|||
%patch60 -p1 -b .dawn-include |
|||
%patch61 -p1 -b .quiche-dcheck |
|||
%patch62 -p1 -b .quiche-private |
|||
%patch63 -p1 -b .skia-CropRect |
|||
%patch64 -p1 -b .AXTreeSerializer-include |
|||
%patch59 -p1 -b .angle-constexpr |
|||
%patch60 -p1 -b .CrossThreadCopier-qualification |
|||
%patch61 -p1 -b .quantization_utils-include |
|||
%patch62 -p1 -b .ruy-include |
|||
%patch63 -p1 -b .TokenizedOutput |
|||
|
|||
%patch65 -p1 -b .gn-gcc-cleanup |
|||
%patch66 -p1 -b .remoting-cstring |
|||
%patch67 -p1 -b .i686-textrels |
|||
# %%patch68 -p1 -b .aarch64-clearkeycdm-binutils-workaround |
|||
%patch68 -p1 -b .aarch64-clearkeycdm-binutils-workaround |
|||
%patch75 -p1 -b .fstatfix |
|||
%if 0%{?fedora} >= 35 |
|||
%patch76 -p1 -b .sigstkszfix |
|||
@ -717,7 +720,6 @@ ln -s depot_tools-%{depot_tools_revision} ../depot_tools |
|||
%patch78 -p1 -b .futex-time64 |
|||
%patch79 -p1 -b .widevine-no-download |
|||
%patch80 -p1 -b .EnumTable-crash |
|||
%patch81 -p1 -b .libva-forward-compat |
|||
|
|||
|
|||
# EPEL specific patches |
|||
@ -727,7 +729,6 @@ ln -s depot_tools-%{depot_tools_revision} ../depot_tools |
|||
%patch103 -p1 -b .epel7-kcmp |
|||
%patch104 -p1 -b .el7cups |
|||
%patch108 -p1 -b .el7-old-libdrm |
|||
%patch109 -p1 -b .el7-no-sys-random |
|||
%endif |
|||
|
|||
%if 0%{?rhel} == 8 |
|||
@ -830,10 +831,11 @@ cp -a /usr/share/fonts/lohit-devanagari/Lohit-Devanagari.ttf /usr/share/fonts/lo |
|||
cp -a /usr/share/fonts/google-noto/NotoSansKhmer-Regular.ttf . |
|||
cp -a /usr/share/fonts/google-noto-emoji/NotoColorEmoji.ttf . |
|||
%if 0%{?fedora} >= 30 |
|||
cp -a /usr/share/fonts/google-noto/NotoSansSymbols2-Regular.ttf /usr/share/fonts/google-noto/NotoSansTibetan-Regular.ttf . |
|||
cp -a /usr/share/fonts/google-noto/NotoSansSymbols2-Regular.ttf . |
|||
%else |
|||
cp -a %{SOURCE114} %{SOURCE115} . |
|||
cp -a %{SOURCE114} . |
|||
%endif |
|||
cp -a %{SOURCE115} . |
|||
popd |
|||
%endif |
|||
|
|||
@ -858,14 +860,14 @@ UNGOOGLED_CHROMIUM_GN_DEFINES+=' use_custom_libcxx=false' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' target_cpu="arm64"' |
|||
%endif |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' use_gnome_keyring=false use_glib=true' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' use_gio=true use_pulseaudio=true icu_use_data_file = true' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' use_gio=true use_pulseaudio=true icu_use_data_file=true' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' enable_nacl=false' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=false' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' enable_hangout_services_extension=false' |
|||
%if %{debug_pkg} |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' blink_symbol_level=1 symbol_level=1' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' blink_symbol_level=1 symbol_level=1 exclude_unwind_tables=false' |
|||
%else |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' blink_symbol_level=0 symbol_level=0' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' blink_symbol_level=0 symbol_level=0 exclude_unwind_tables=true' |
|||
%endif |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' enable_widevine=true' |
|||
%if %{use_vaapi} |
|||
@ -878,7 +880,7 @@ UNGOOGLED_CHROMIUM_GN_DEFINES+=' use_vaapi=false' |
|||
%if 0%{?fedora} |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' rtc_use_pipewire=true rtc_link_pipewire=true' |
|||
%endif |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' chrome_pgo_phase=0 enable_js_type_check=false enable_mse_mpeg2ts_stream_parser=true enable_nacl_nonsfi=false enable_one_click_signin=false enable_reading_list=false enable_remoting=false enable_reporting=false enable_service_discovery=false exclude_unwind_tables=true safe_browsing_mode=0' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' chrome_pgo_phase=0 enable_js_type_check=false enable_mse_mpeg2ts_stream_parser=true enable_nacl_nonsfi=false enable_one_click_signin=false enable_reading_list=false enable_remoting=false enable_reporting=false enable_service_discovery=false safe_browsing_mode=0' |
|||
export UNGOOGLED_CHROMIUM_GN_DEFINES |
|||
|
|||
# ungoogled-chromium: binary pruning. |
|||
@ -978,14 +980,19 @@ build/linux/unbundle/remove_bundled_libraries.py \ |
|||
'third_party/devtools-frontend/src/front_end/third_party/puppeteer' \ |
|||
'third_party/devtools-frontend/src/front_end/third_party/wasmparser' \ |
|||
'third_party/dom_distiller_js' \ |
|||
'third_party/eigen3' \ |
|||
'third_party/emoji-segmenter' \ |
|||
'third_party/expat' \ |
|||
'third_party/farmhash' \ |
|||
'third_party/fdlibm' \ |
|||
'third_party/ffmpeg' \ |
|||
'third_party/fft2d' \ |
|||
'third_party/flac' \ |
|||
'third_party/flatbuffers' \ |
|||
'third_party/fontconfig' \ |
|||
'third_party/freetype' \ |
|||
'third_party/fusejs' \ |
|||
'third_party/gemmlowp' \ |
|||
'third_party/google_input_tools' \ |
|||
'third_party/google_input_tools/third_party/closure_library' \ |
|||
'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ |
|||
@ -1005,10 +1012,12 @@ build/linux/unbundle/remove_bundled_libraries.py \ |
|||
'third_party/libXNVCtrl' \ |
|||
'third_party/libaddressinput' \ |
|||
'third_party/libaom' \ |
|||
'third_party/libaom/source/libaom/third_party/fastfeat' \ |
|||
'third_party/libaom/source/libaom/third_party/vector' \ |
|||
'third_party/libaom/source/libaom/third_party/x86inc' \ |
|||
'third_party/libavif' \ |
|||
'third_party/libdrm' \ |
|||
'third_party/libgav1' \ |
|||
'third_party/libgifcodec' \ |
|||
'third_party/libjingle' \ |
|||
'third_party/libjpeg_turbo' \ |
|||
@ -1031,6 +1040,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ |
|||
'third_party/libxml/chromium' \ |
|||
'third_party/libxslt' \ |
|||
'third_party/libyuv' \ |
|||
'third_party/libzip' \ |
|||
'third_party/lottie' \ |
|||
'third_party/lss' \ |
|||
'third_party/lzma_sdk' \ |
|||
@ -1068,7 +1078,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ |
|||
'third_party/pdfium/third_party/skia_shared' \ |
|||
'third_party/perfetto' \ |
|||
'third_party/perfetto/protos/third_party/chromium' \ |
|||
'third_party/perfetto/protos/third_party/pprof' \ |
|||
'third_party/pffft' \ |
|||
'third_party/ply' \ |
|||
'third_party/polymer' \ |
|||
@ -1083,6 +1092,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ |
|||
'third_party/re2' \ |
|||
%endif |
|||
'third_party/rnnoise' \ |
|||
'third_party/ruy' \ |
|||
'third_party/s2cellid' \ |
|||
'third_party/schema_org' \ |
|||
'third_party/securemessage' \ |
|||
@ -1106,10 +1116,17 @@ build/linux/unbundle/remove_bundled_libraries.py \ |
|||
'third_party/swiftshader/third_party/subzero' \ |
|||
'third_party/swiftshader/third_party/SPIRV-Headers' \ |
|||
'third_party/tcmalloc' \ |
|||
'third_party/tensorflow-text' \ |
|||
'third_party/test_fonts' \ |
|||
'third_party/tflite' \ |
|||
'third_party/tflite/src/third_party/eigen3' \ |
|||
'third_party/tflite/src/third_party/fft2d' \ |
|||
'third_party/tflite-support' \ |
|||
'third_party/tint' \ |
|||
'third_party/ukey2' \ |
|||
'third_party/usb_ids' \ |
|||
'third_party/usrsctp' \ |
|||
'third_party/utf' \ |
|||
'third_party/vulkan' \ |
|||
'third_party/wayland' \ |
|||
'third_party/web-animations-js' \ |
|||
@ -1511,6 +1528,9 @@ fi |
|||
%endif |
|||
|
|||
%changelog |
|||
* Sun May 2 2021 wchen342 <[email protected]> - 90.0.4430.93-1 |
|||
- update Chromium to 90.0.4430.93 |
|||
|
|||
* Thu Apr 1 2021 wchen342 <[email protected]> - 89.0.4389.114-1 |
|||
- Update Chromium to 89.0.4389.114 |
|||
|
|||
|
Loading…
Reference in new issue