Build/test fixes
This commit is contained in:
parent
feba2cc76d
commit
7b9a3f8c10
213
ffvpx.patch
213
ffvpx.patch
@ -1,6 +1,6 @@
|
||||
diff -up firefox-84.0/dom/media/platforms/ffmpeg/ffmpeg58/moz.build.ffvpx firefox-84.0/dom/media/platforms/ffmpeg/ffmpeg58/moz.build
|
||||
--- firefox-84.0/dom/media/platforms/ffmpeg/ffmpeg58/moz.build.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/ffmpeg58/moz.build 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/ffmpeg58/moz.build 2020-12-10 20:36:08.398441034 +0100
|
||||
@@ -27,8 +27,6 @@ if CONFIG['CC_TYPE'] == 'gcc':
|
||||
]
|
||||
if CONFIG['MOZ_WAYLAND']:
|
||||
@ -12,7 +12,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/ffmpeg58/moz.build.ffvpx firefo
|
||||
FINAL_LIBRARY = 'xul'
|
||||
diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp.ffvpx firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp
|
||||
--- firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp 2020-12-10 20:40:53.388541336 +0100
|
||||
@@ -11,6 +11,10 @@
|
||||
#include "mozilla/Types.h"
|
||||
#include "PlatformDecoderModule.h"
|
||||
@ -73,7 +73,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp.ffvpx fire
|
||||
return VA_FUNC_LOADED(avcodec_get_hw_config) &&
|
||||
diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.h.ffvpx firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.h
|
||||
--- firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.h.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.h 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.h 2020-12-10 20:40:53.388541336 +0100
|
||||
@@ -56,6 +56,7 @@ struct MOZ_ONLY_USED_TO_AVOID_STATIC_CON
|
||||
#ifdef MOZ_WAYLAND
|
||||
// Check if mVALib are available and we can use HW decode.
|
||||
@ -84,7 +84,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegLibWrapper.h.ffvpx firefo
|
||||
// indicate the version of libavcodec linked to.
|
||||
diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp.ffvpx firefox-84.0/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp
|
||||
--- firefox-84.0/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp 2020-12-10 20:40:53.388541336 +0100
|
||||
@@ -9,10 +9,6 @@
|
||||
#include "mozilla/ArrayUtils.h"
|
||||
#include "FFmpegLog.h"
|
||||
@ -143,8 +143,26 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp.ffvpx f
|
||||
// While going through all possible libs, this status will be updated with a
|
||||
diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp
|
||||
--- firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp 2020-12-10 17:03:31.731266180 +0100
|
||||
@@ -124,8 +124,8 @@ static AVPixelFormat ChooseVAAPIPixelFor
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp 2020-12-10 20:40:53.392541452 +0100
|
||||
@@ -32,6 +32,8 @@
|
||||
# define AV_PIX_FMT_NONE PIX_FMT_NONE
|
||||
#endif
|
||||
#include "mozilla/PodOperations.h"
|
||||
+#include "mozilla/ScopeExit.h"
|
||||
+#include "mozilla/StaticPrefs_media.h"
|
||||
#include "mozilla/TaskQueue.h"
|
||||
#include "nsThreadUtils.h"
|
||||
#include "prsystem.h"
|
||||
@@ -45,7 +47,7 @@ typedef int VAStatus;
|
||||
#endif
|
||||
|
||||
// Use some extra HW frames for potential rendering lags.
|
||||
-#define EXTRA_HW_FRAMES 6
|
||||
+#define EXTRA_HW_FRAMES 20
|
||||
|
||||
typedef mozilla::layers::Image Image;
|
||||
typedef mozilla::layers::PlanarYCbCrImage PlanarYCbCrImage;
|
||||
@@ -124,8 +126,8 @@ static AVPixelFormat ChooseVAAPIPixelFor
|
||||
return AV_PIX_FMT_NONE;
|
||||
}
|
||||
|
||||
@ -155,7 +173,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx fi
|
||||
: mSurface(aSurface),
|
||||
mLib(aLib),
|
||||
mAVHWFramesContext(nullptr),
|
||||
@@ -138,8 +138,8 @@ DMABufSurfaceWrapper::DMABufSurfaceWrapp
|
||||
@@ -138,8 +140,8 @@ DMABufSurfaceWrapper::DMABufSurfaceWrapp
|
||||
mSurface->GetUID());
|
||||
}
|
||||
|
||||
@ -166,7 +184,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx fi
|
||||
FFMPEG_LOG("DMABufSurfaceWrapper: VAAPI locking dmabuf surface UID = %d",
|
||||
mSurface->GetUID());
|
||||
if (aAVCodecContext && aAVFrame) {
|
||||
@@ -148,7 +148,7 @@ void DMABufSurfaceWrapper::LockVAAPIData
|
||||
@@ -148,7 +150,7 @@ void DMABufSurfaceWrapper::LockVAAPIData
|
||||
}
|
||||
}
|
||||
|
||||
@ -175,7 +193,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx fi
|
||||
FFMPEG_LOG("DMABufSurfaceWrapper: VAAPI releasing dmabuf surface UID = %d",
|
||||
mSurface->GetUID());
|
||||
if (mHWAVBuffer && mAVHWFramesContext) {
|
||||
@@ -158,7 +158,7 @@ void DMABufSurfaceWrapper::ReleaseVAAPID
|
||||
@@ -158,7 +160,7 @@ void DMABufSurfaceWrapper::ReleaseVAAPID
|
||||
mSurface->ReleaseSurface();
|
||||
}
|
||||
|
||||
@ -184,7 +202,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx fi
|
||||
FFMPEG_LOG("DMABufSurfaceWrapper: deleting dmabuf surface UID = %d",
|
||||
mSurface->GetUID());
|
||||
ReleaseVAAPIData();
|
||||
@@ -181,7 +181,14 @@ AVCodec* FFmpegVideoDecoder<LIBAV_VER>::
|
||||
@@ -181,7 +183,14 @@ AVCodec* FFmpegVideoDecoder<LIBAV_VER>::
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
@ -200,7 +218,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx fi
|
||||
public:
|
||||
VAAPIDisplayHolder(FFmpegLibWrapper* aLib, VADisplay aDisplay)
|
||||
: mLib(aLib), mDisplay(aDisplay){};
|
||||
@@ -193,7 +200,8 @@ class VAAPIDisplayHolder {
|
||||
@@ -193,7 +202,8 @@ class VAAPIDisplayHolder {
|
||||
};
|
||||
|
||||
static void VAAPIDisplayReleaseCallback(struct AVHWDeviceContext* hwctx) {
|
||||
@ -210,7 +228,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx fi
|
||||
delete displayHolder;
|
||||
}
|
||||
|
||||
@@ -229,7 +237,7 @@ bool FFmpegVideoDecoder<LIBAV_VER>::Crea
|
||||
@@ -229,7 +239,7 @@ bool FFmpegVideoDecoder<LIBAV_VER>::Crea
|
||||
}
|
||||
}
|
||||
|
||||
@ -219,7 +237,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx fi
|
||||
hwctx->free = VAAPIDisplayReleaseCallback;
|
||||
|
||||
int major, minor;
|
||||
@@ -703,7 +711,7 @@ void FFmpegVideoDecoder<LIBAV_VER>::Rele
|
||||
@@ -703,7 +713,7 @@ void FFmpegVideoDecoder<LIBAV_VER>::Rele
|
||||
}
|
||||
}
|
||||
|
||||
@ -228,7 +246,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx fi
|
||||
FFmpegVideoDecoder<LIBAV_VER>::GetUnusedDMABufSurfaceWrapper() {
|
||||
int len = mDMABufSurfaces.Length();
|
||||
for (int i = 0; i < len; i++) {
|
||||
@@ -769,7 +777,8 @@ MediaResult FFmpegVideoDecoder<LIBAV_VER
|
||||
@@ -769,7 +779,8 @@ MediaResult FFmpegVideoDecoder<LIBAV_VER
|
||||
|
||||
RefPtr<DMABufSurfaceYUV> surface;
|
||||
|
||||
@ -240,7 +258,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp.ffvpx fi
|
||||
surface = DMABufSurfaceYUV::CreateYUVSurface(vaDesc);
|
||||
diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h.ffvpx firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h
|
||||
--- firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h 2020-12-10 20:40:53.388541336 +0100
|
||||
@@ -55,7 +55,14 @@ namespace mozilla {
|
||||
// We own the DMABufSurface underlying GPU data and we use it for
|
||||
// repeated rendering of video frames.
|
||||
@ -277,7 +295,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h.ffvpx fire
|
||||
RefPtr<ImageContainer> mImageContainer;
|
||||
diff -up firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp.ffvpx firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
--- firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp 2020-12-10 20:40:53.388541336 +0100
|
||||
@@ -64,6 +64,10 @@ bool FFVPXRuntimeLinker::Init() {
|
||||
MOZ_ASSERT(NS_IsMainThread());
|
||||
sLinkStatus = LinkStatus_FAILED;
|
||||
@ -291,7 +309,7 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp.ff
|
||||
PathString lgpllibsname = GetLibraryName(nullptr, "lgpllibs");
|
||||
diff -up firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/moz.build.ffvpx firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/moz.build
|
||||
--- firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/moz.build.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/moz.build 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/moz.build 2020-12-10 20:36:08.431441959 +0100
|
||||
@@ -36,4 +36,8 @@ if CONFIG["CC_TYPE"] == "gcc":
|
||||
DEFINES["FFVPX_VERSION"] = 46465650
|
||||
DEFINES["USING_MOZFFVPX"] = True
|
||||
@ -303,18 +321,87 @@ diff -up firefox-84.0/dom/media/platforms/ffmpeg/ffvpx/moz.build.ffvpx firefox-8
|
||||
FINAL_LIBRARY = "xul"
|
||||
diff -up firefox-84.0/gfx/layers/DMABUFSurfaceImage.cpp.ffvpx firefox-84.0/gfx/layers/DMABUFSurfaceImage.cpp
|
||||
--- firefox-84.0/gfx/layers/DMABUFSurfaceImage.cpp.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/gfx/layers/DMABUFSurfaceImage.cpp 2020-12-10 17:03:31.731266180 +0100
|
||||
@@ -9,6 +9,7 @@
|
||||
+++ firefox-84.0/gfx/layers/DMABUFSurfaceImage.cpp 2020-12-10 20:36:08.308438509 +0100
|
||||
@@ -5,16 +5,23 @@
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#include "DMABUFSurfaceImage.h"
|
||||
-#include "gfxPlatform.h"
|
||||
+#include "mozilla/widget/DMABufSurface.h"
|
||||
#include "mozilla/layers/CompositableClient.h"
|
||||
#include "mozilla/layers/CompositableForwarder.h"
|
||||
#include "mozilla/layers/DMABUFTextureClientOGL.h"
|
||||
-#include "mozilla/UniquePtr.h"
|
||||
+#include "mozilla/layers/TextureForwarder.h"
|
||||
#include "mozilla/UniquePtr.h"
|
||||
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::layers;
|
||||
using namespace mozilla::gfx;
|
||||
|
||||
+DMABUFSurfaceImage::DMABUFSurfaceImage(DMABufSurface* aSurface)
|
||||
+ : Image(nullptr, ImageFormat::DMABUF), mSurface(aSurface) {
|
||||
+ mSurface->GlobalRefAdd();
|
||||
+}
|
||||
+
|
||||
+DMABUFSurfaceImage::~DMABUFSurfaceImage() { mSurface->GlobalRefRelease(); }
|
||||
+
|
||||
TextureClient* DMABUFSurfaceImage::GetTextureClient(
|
||||
KnowsCompositor* aKnowsCompositor) {
|
||||
if (!mTextureClient) {
|
||||
@@ -25,3 +32,7 @@ TextureClient* DMABUFSurfaceImage::GetTe
|
||||
}
|
||||
return mTextureClient;
|
||||
}
|
||||
+
|
||||
+gfx::IntSize DMABUFSurfaceImage::GetSize() const {
|
||||
+ return gfx::IntSize::Truncate(mSurface->GetWidth(), mSurface->GetHeight());
|
||||
+}
|
||||
diff -up firefox-84.0/gfx/layers/DMABUFSurfaceImage.h.ffvpx firefox-84.0/gfx/layers/DMABUFSurfaceImage.h
|
||||
--- firefox-84.0/gfx/layers/DMABUFSurfaceImage.h.ffvpx 2020-12-10 20:53:45.300792876 +0100
|
||||
+++ firefox-84.0/gfx/layers/DMABUFSurfaceImage.h 2020-12-10 20:36:08.279437696 +0100
|
||||
@@ -8,32 +8,24 @@
|
||||
#define SURFACE_DMABUF_H
|
||||
|
||||
#include "ImageContainer.h"
|
||||
-#include "mozilla/widget/DMABufSurface.h"
|
||||
-#include "mozilla/gfx/Point.h"
|
||||
-#include "mozilla/layers/TextureClient.h"
|
||||
+
|
||||
+class DMABufSurface;
|
||||
|
||||
namespace mozilla {
|
||||
namespace layers {
|
||||
|
||||
+class TextureClient;
|
||||
+
|
||||
class DMABUFSurfaceImage : public Image {
|
||||
public:
|
||||
- explicit DMABUFSurfaceImage(DMABufSurface* aSurface)
|
||||
- : Image(nullptr, ImageFormat::DMABUF), mSurface(aSurface) {
|
||||
- mSurface->GlobalRefAdd();
|
||||
- }
|
||||
-
|
||||
- ~DMABUFSurfaceImage() { mSurface->GlobalRefRelease(); }
|
||||
+ explicit DMABUFSurfaceImage(DMABufSurface* aSurface);
|
||||
+ ~DMABUFSurfaceImage();
|
||||
|
||||
DMABufSurface* GetSurface() { return mSurface; }
|
||||
-
|
||||
- gfx::IntSize GetSize() const override {
|
||||
- return gfx::IntSize::Truncate(mSurface->GetWidth(), mSurface->GetHeight());
|
||||
- }
|
||||
-
|
||||
+ gfx::IntSize GetSize() const override;
|
||||
already_AddRefed<gfx::SourceSurface> GetAsSourceSurface() override {
|
||||
return nullptr;
|
||||
}
|
||||
-
|
||||
TextureClient* GetTextureClient(KnowsCompositor* aKnowsCompositor) override;
|
||||
|
||||
private:
|
||||
diff -up firefox-84.0/media/ffvpx/changes.patch.ffvpx firefox-84.0/media/ffvpx/changes.patch
|
||||
--- firefox-84.0/media/ffvpx/changes.patch.ffvpx 2020-12-08 00:35:04.000000000 +0100
|
||||
+++ firefox-84.0/media/ffvpx/changes.patch 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/media/ffvpx/changes.patch 2020-12-10 20:40:53.388541336 +0100
|
||||
@@ -50,3 +50,27 @@ index 9fb8d0a..97ad3b9 100644
|
||||
rgba_color[0] = rgba >> 24;
|
||||
rgba_color[1] = rgba >> 16;
|
||||
@ -345,7 +432,7 @@ diff -up firefox-84.0/media/ffvpx/changes.patch.ffvpx firefox-84.0/media/ffvpx/c
|
||||
+
|
||||
diff -up firefox-84.0/media/ffvpx/config_common.h.ffvpx firefox-84.0/media/ffvpx/config_common.h
|
||||
--- firefox-84.0/media/ffvpx/config_common.h.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/media/ffvpx/config_common.h 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/media/ffvpx/config_common.h 2020-12-10 20:40:53.388541336 +0100
|
||||
@@ -18,4 +18,13 @@
|
||||
#define CONFIG_RDFT 1
|
||||
#endif
|
||||
@ -362,7 +449,7 @@ diff -up firefox-84.0/media/ffvpx/config_common.h.ffvpx firefox-84.0/media/ffvpx
|
||||
#endif
|
||||
diff -up firefox-84.0/media/ffvpx/FILES.ffvpx firefox-84.0/media/ffvpx/FILES
|
||||
--- firefox-84.0/media/ffvpx/FILES.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/media/ffvpx/FILES 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/media/ffvpx/FILES 2020-12-10 20:40:53.388541336 +0100
|
||||
@@ -131,6 +131,11 @@
|
||||
./libavcodec/thread.h
|
||||
./libavcodec/unary.h
|
||||
@ -386,7 +473,7 @@ diff -up firefox-84.0/media/ffvpx/FILES.ffvpx firefox-84.0/media/ffvpx/FILES
|
||||
./libavutil/imgutils_internal.h
|
||||
diff -up firefox-84.0/media/ffvpx/libavcodec/avcodec.symbols.ffvpx firefox-84.0/media/ffvpx/libavcodec/avcodec.symbols
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/avcodec.symbols.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/avcodec.symbols 2020-12-10 17:03:31.731266180 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/avcodec.symbols 2020-12-10 20:40:53.389541365 +0100
|
||||
@@ -28,6 +28,11 @@ av_get_pcm_codec
|
||||
av_get_profile_name
|
||||
av_grow_packet
|
||||
@ -408,8 +495,8 @@ diff -up firefox-84.0/media/ffvpx/libavcodec/avcodec.symbols.ffvpx firefox-84.0/
|
||||
avcodec_get_subtitle_rect_class
|
||||
avcodec_get_type
|
||||
diff -up firefox-84.0/media/ffvpx/libavcodec/moz.build.ffvpx firefox-84.0/media/ffvpx/libavcodec/moz.build
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/moz.build.ffvpx 2020-12-10 17:03:31.725266007 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/moz.build 2020-12-10 17:03:31.732266209 +0100
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/moz.build.ffvpx 2020-12-10 20:40:53.383541192 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/moz.build 2020-12-10 20:40:53.389541365 +0100
|
||||
@@ -96,6 +96,13 @@ if not CONFIG['MOZ_FFVPX_AUDIOONLY']:
|
||||
'vp9prob.c',
|
||||
'vp9recon.c'
|
||||
@ -425,8 +512,8 @@ diff -up firefox-84.0/media/ffvpx/libavcodec/moz.build.ffvpx firefox-84.0/media/
|
||||
if CONFIG['MOZ_FDK_AAC']:
|
||||
SOURCES += [
|
||||
diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.c.ffvpx firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.c
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.c.ffvpx 2020-12-10 17:03:31.732266209 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.c 2020-12-10 17:03:31.732266209 +0100
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.c.ffvpx 2020-12-10 20:40:53.389541365 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.c 2020-12-10 20:40:53.389541365 +0100
|
||||
@@ -0,0 +1,732 @@
|
||||
+/*
|
||||
+ * This file is part of FFmpeg.
|
||||
@ -1161,8 +1248,8 @@ diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.c.ffvpx firefox-84.0/m
|
||||
+ return 0;
|
||||
+}
|
||||
diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.h.ffvpx firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.h
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.h.ffvpx 2020-12-10 17:03:31.732266209 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.h 2020-12-10 17:03:31.732266209 +0100
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.h.ffvpx 2020-12-10 20:40:53.389541365 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.h 2020-12-10 20:40:53.389541365 +0100
|
||||
@@ -0,0 +1,105 @@
|
||||
+/*
|
||||
+ * This file is part of FFmpeg.
|
||||
@ -1270,8 +1357,8 @@ diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi_decode.h.ffvpx firefox-84.0/m
|
||||
+
|
||||
+#endif /* AVCODEC_VAAPI_DECODE_H */
|
||||
diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi.h.ffvpx firefox-84.0/media/ffvpx/libavcodec/vaapi.h
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi.h.ffvpx 2020-12-10 17:03:31.732266209 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi.h 2020-12-10 17:03:31.732266209 +0100
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi.h.ffvpx 2020-12-10 20:40:53.389541365 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi.h 2020-12-10 20:40:53.389541365 +0100
|
||||
@@ -0,0 +1,86 @@
|
||||
+/*
|
||||
+ * Video Acceleration API (shared data between FFmpeg and the video player)
|
||||
@ -1360,8 +1447,8 @@ diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi.h.ffvpx firefox-84.0/media/ff
|
||||
+
|
||||
+#endif /* AVCODEC_VAAPI_H */
|
||||
diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi_vp8.c.ffvpx firefox-84.0/media/ffvpx/libavcodec/vaapi_vp8.c
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi_vp8.c.ffvpx 2020-12-10 17:03:31.732266209 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi_vp8.c 2020-12-10 17:03:31.732266209 +0100
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi_vp8.c.ffvpx 2020-12-10 20:40:53.389541365 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi_vp8.c 2020-12-10 20:40:53.389541365 +0100
|
||||
@@ -0,0 +1,237 @@
|
||||
+/*
|
||||
+ * This file is part of FFmpeg.
|
||||
@ -1601,8 +1688,8 @@ diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi_vp8.c.ffvpx firefox-84.0/medi
|
||||
+ .caps_internal = HWACCEL_CAP_ASYNC_SAFE,
|
||||
+};
|
||||
diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi_vp9.c.ffvpx firefox-84.0/media/ffvpx/libavcodec/vaapi_vp9.c
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi_vp9.c.ffvpx 2020-12-10 17:03:31.732266209 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi_vp9.c 2020-12-10 17:03:31.732266209 +0100
|
||||
--- firefox-84.0/media/ffvpx/libavcodec/vaapi_vp9.c.ffvpx 2020-12-10 20:40:53.389541365 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavcodec/vaapi_vp9.c 2020-12-10 20:40:53.389541365 +0100
|
||||
@@ -0,0 +1,185 @@
|
||||
+/*
|
||||
+ * VP9 HW decode acceleration through VA API
|
||||
@ -1791,7 +1878,7 @@ diff -up firefox-84.0/media/ffvpx/libavcodec/vaapi_vp9.c.ffvpx firefox-84.0/medi
|
||||
+};
|
||||
diff -up firefox-84.0/media/ffvpx/libavutil/avutil.symbols.ffvpx firefox-84.0/media/ffvpx/libavutil/avutil.symbols
|
||||
--- firefox-84.0/media/ffvpx/libavutil/avutil.symbols.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavutil/avutil.symbols 2020-12-10 17:03:31.732266209 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavutil/avutil.symbols 2020-12-10 20:40:53.389541365 +0100
|
||||
@@ -158,6 +158,9 @@ av_get_token
|
||||
av_gettime
|
||||
av_gettime_relative
|
||||
@ -1813,8 +1900,8 @@ diff -up firefox-84.0/media/ffvpx/libavutil/avutil.symbols.ffvpx firefox-84.0/me
|
||||
av_malloc_array
|
||||
av_mallocz_array
|
||||
diff -up firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.c.ffvpx firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.c
|
||||
--- firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.c.ffvpx 2020-12-10 17:03:31.732266209 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.c 2020-12-10 17:03:31.732266209 +0100
|
||||
--- firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.c.ffvpx 2020-12-10 20:40:53.390541394 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.c 2020-12-10 20:40:53.389541365 +0100
|
||||
@@ -0,0 +1,1691 @@
|
||||
+/*
|
||||
+ * This file is part of FFmpeg.
|
||||
@ -3508,8 +3595,8 @@ diff -up firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.c.ffvpx firefox-84.0
|
||||
+ },
|
||||
+};
|
||||
diff -up firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.h.ffvpx firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.h
|
||||
--- firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.h.ffvpx 2020-12-10 17:03:31.733266237 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.h 2020-12-10 17:03:31.733266237 +0100
|
||||
--- firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.h.ffvpx 2020-12-10 20:40:53.390541394 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.h 2020-12-10 20:40:53.390541394 +0100
|
||||
@@ -0,0 +1,117 @@
|
||||
+/*
|
||||
+ * This file is part of FFmpeg.
|
||||
@ -3630,7 +3717,7 @@ diff -up firefox-84.0/media/ffvpx/libavutil/hwcontext_vaapi.h.ffvpx firefox-84.0
|
||||
+#endif /* AVUTIL_HWCONTEXT_VAAPI_H */
|
||||
diff -up firefox-84.0/media/ffvpx/libavutil/moz.build.ffvpx firefox-84.0/media/ffvpx/libavutil/moz.build
|
||||
--- firefox-84.0/media/ffvpx/libavutil/moz.build.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavutil/moz.build 2020-12-10 17:03:31.733266237 +0100
|
||||
+++ firefox-84.0/media/ffvpx/libavutil/moz.build 2020-12-10 20:40:53.390541394 +0100
|
||||
@@ -45,6 +45,11 @@ SOURCES += [
|
||||
'time.c',
|
||||
'utils.c'
|
||||
@ -3645,7 +3732,7 @@ diff -up firefox-84.0/media/ffvpx/libavutil/moz.build.ffvpx firefox-84.0/media/f
|
||||
SOURCES += [
|
||||
diff -up firefox-84.0/media/ffvpx/moz.build.ffvpx firefox-84.0/media/ffvpx/moz.build
|
||||
--- firefox-84.0/media/ffvpx/moz.build.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/media/ffvpx/moz.build 2020-12-10 17:03:31.733266237 +0100
|
||||
+++ firefox-84.0/media/ffvpx/moz.build 2020-12-10 20:40:53.390541394 +0100
|
||||
@@ -11,3 +11,8 @@ DIRS += [
|
||||
'libavutil',
|
||||
'libavcodec'
|
||||
@ -3656,8 +3743,8 @@ diff -up firefox-84.0/media/ffvpx/moz.build.ffvpx firefox-84.0/media/ffvpx/moz.b
|
||||
+ 'mozva',
|
||||
+ ]
|
||||
diff -up firefox-84.0/media/ffvpx/mozva/moz.build.ffvpx firefox-84.0/media/ffvpx/mozva/moz.build
|
||||
--- firefox-84.0/media/ffvpx/mozva/moz.build.ffvpx 2020-12-10 17:06:25.599272289 +0100
|
||||
+++ firefox-84.0/media/ffvpx/mozva/moz.build 2020-12-10 17:07:19.630827998 +0100
|
||||
--- firefox-84.0/media/ffvpx/mozva/moz.build.ffvpx 2020-12-10 20:40:53.390541394 +0100
|
||||
+++ firefox-84.0/media/ffvpx/mozva/moz.build 2020-12-10 20:40:53.390541394 +0100
|
||||
@@ -0,0 +1,13 @@
|
||||
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
|
||||
+# vim: set filetype=python:
|
||||
@ -3673,8 +3760,8 @@ diff -up firefox-84.0/media/ffvpx/mozva/moz.build.ffvpx firefox-84.0/media/ffvpx
|
||||
+
|
||||
+Library('mozva')
|
||||
diff -up firefox-84.0/media/ffvpx/mozva/mozva.c.ffvpx firefox-84.0/media/ffvpx/mozva/mozva.c
|
||||
--- firefox-84.0/media/ffvpx/mozva/mozva.c.ffvpx 2020-12-10 17:05:06.119983875 +0100
|
||||
+++ firefox-84.0/media/ffvpx/mozva/mozva.c 2020-12-10 17:05:06.119983875 +0100
|
||||
--- firefox-84.0/media/ffvpx/mozva/mozva.c.ffvpx 2020-12-10 20:40:53.390541394 +0100
|
||||
+++ firefox-84.0/media/ffvpx/mozva/mozva.c 2020-12-10 20:40:53.390541394 +0100
|
||||
@@ -0,0 +1,406 @@
|
||||
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
+/* vim:expandtab:shiftwidth=4:tabstop=4:
|
||||
@ -4084,7 +4171,7 @@ diff -up firefox-84.0/media/ffvpx/mozva/mozva.c.ffvpx firefox-84.0/media/ffvpx/m
|
||||
+#pragma GCC visibility pop
|
||||
diff -up firefox-84.0/media/ffvpx/README_MOZILLA.ffvpx firefox-84.0/media/ffvpx/README_MOZILLA
|
||||
--- firefox-84.0/media/ffvpx/README_MOZILLA.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/media/ffvpx/README_MOZILLA 2020-12-10 17:05:06.119983875 +0100
|
||||
+++ firefox-84.0/media/ffvpx/README_MOZILLA 2020-12-10 20:40:53.390541394 +0100
|
||||
@@ -56,3 +56,5 @@ $ for i in `cat $PATH_CENTRAL/media/ffvp
|
||||
Then apply patch.diff on the ffvpx tree.
|
||||
|
||||
@ -4092,15 +4179,15 @@ diff -up firefox-84.0/media/ffvpx/README_MOZILLA.ffvpx firefox-84.0/media/ffvpx/
|
||||
+
|
||||
+Apply linux-vaapi-build.patch patch to enable build VA-API support for Linux.
|
||||
diff -up firefox-84.0/media/ffvpx/va/README.ffvpx firefox-84.0/media/ffvpx/va/README
|
||||
--- firefox-84.0/media/ffvpx/va/README.ffvpx 2020-12-10 17:05:06.119983875 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/README 2020-12-10 17:05:06.119983875 +0100
|
||||
--- firefox-84.0/media/ffvpx/va/README.ffvpx 2020-12-10 20:40:53.390541394 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/README 2020-12-10 20:40:53.390541394 +0100
|
||||
@@ -0,0 +1,2 @@
|
||||
+There are libva headers from libva 1.7.0 used to build vaapi support for in-tree ffvpx.
|
||||
+Apply va.patch when you update it to new versions.
|
||||
\ No newline at end of file
|
||||
diff -up firefox-84.0/media/ffvpx/va/va_dec_vp8.h.ffvpx firefox-84.0/media/ffvpx/va/va_dec_vp8.h
|
||||
--- firefox-84.0/media/ffvpx/va/va_dec_vp8.h.ffvpx 2020-12-10 17:05:06.119983875 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va_dec_vp8.h 2020-12-10 17:05:06.119983875 +0100
|
||||
--- firefox-84.0/media/ffvpx/va/va_dec_vp8.h.ffvpx 2020-12-10 20:40:53.390541394 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va_dec_vp8.h 2020-12-10 20:40:53.390541394 +0100
|
||||
@@ -0,0 +1,254 @@
|
||||
+/*
|
||||
+ * Copyright (c) 2007-2012 Intel Corporation. All Rights Reserved.
|
||||
@ -4357,8 +4444,8 @@ diff -up firefox-84.0/media/ffvpx/va/va_dec_vp8.h.ffvpx firefox-84.0/media/ffvpx
|
||||
+
|
||||
+#endif /* VA_DEC_VP8_H */
|
||||
diff -up firefox-84.0/media/ffvpx/va/va_dec_vp9.h.ffvpx firefox-84.0/media/ffvpx/va/va_dec_vp9.h
|
||||
--- firefox-84.0/media/ffvpx/va/va_dec_vp9.h.ffvpx 2020-12-10 17:05:06.119983875 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va_dec_vp9.h 2020-12-10 17:05:06.119983875 +0100
|
||||
--- firefox-84.0/media/ffvpx/va/va_dec_vp9.h.ffvpx 2020-12-10 20:40:53.390541394 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va_dec_vp9.h 2020-12-10 20:40:53.390541394 +0100
|
||||
@@ -0,0 +1,319 @@
|
||||
+/*
|
||||
+ * Copyright (c) 2014 Intel Corporation. All Rights Reserved.
|
||||
@ -4680,8 +4767,8 @@ diff -up firefox-84.0/media/ffvpx/va/va_dec_vp9.h.ffvpx firefox-84.0/media/ffvpx
|
||||
+
|
||||
+#endif /* VA_DEC_VP9_H */
|
||||
diff -up firefox-84.0/media/ffvpx/va/va.h.ffvpx firefox-84.0/media/ffvpx/va/va.h
|
||||
--- firefox-84.0/media/ffvpx/va/va.h.ffvpx 2020-12-10 17:05:06.121983932 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va.h 2020-12-10 17:05:06.121983932 +0100
|
||||
--- firefox-84.0/media/ffvpx/va/va.h.ffvpx 2020-12-10 20:40:53.391541423 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va.h 2020-12-10 20:40:53.391541423 +0100
|
||||
@@ -0,0 +1,4636 @@
|
||||
+/*
|
||||
+ * Copyright (c) 2007-2009 Intel Corporation. All Rights Reserved.
|
||||
@ -9320,8 +9407,8 @@ diff -up firefox-84.0/media/ffvpx/va/va.h.ffvpx firefox-84.0/media/ffvpx/va/va.h
|
||||
+
|
||||
+#endif /* _VA_H_ */
|
||||
diff -up firefox-84.0/media/ffvpx/va/va.patch.ffvpx firefox-84.0/media/ffvpx/va/va.patch
|
||||
--- firefox-84.0/media/ffvpx/va/va.patch.ffvpx 2020-12-10 17:05:06.121983932 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va.patch 2020-12-10 17:05:06.121983932 +0100
|
||||
--- firefox-84.0/media/ffvpx/va/va.patch.ffvpx 2020-12-10 20:40:53.391541423 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va.patch 2020-12-10 20:40:53.391541423 +0100
|
||||
@@ -0,0 +1,33 @@
|
||||
+--- va.h.old 2020-10-22 10:41:57.805112031 +0200
|
||||
++++ va.h 2020-10-22 10:37:22.597088670 +0200
|
||||
@ -9357,8 +9444,8 @@ diff -up firefox-84.0/media/ffvpx/va/va.patch.ffvpx firefox-84.0/media/ffvpx/va/
|
||||
+
|
||||
+ /**@}*/
|
||||
diff -up firefox-84.0/media/ffvpx/va/va_version.h.ffvpx firefox-84.0/media/ffvpx/va/va_version.h
|
||||
--- firefox-84.0/media/ffvpx/va/va_version.h.ffvpx 2020-12-10 17:05:06.121983932 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va_version.h 2020-12-10 17:05:06.121983932 +0100
|
||||
--- firefox-84.0/media/ffvpx/va/va_version.h.ffvpx 2020-12-10 20:40:53.391541423 +0100
|
||||
+++ firefox-84.0/media/ffvpx/va/va_version.h 2020-12-10 20:40:53.391541423 +0100
|
||||
@@ -0,0 +1,87 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2009 Splitted-Desktop Systems. All Rights Reserved.
|
||||
@ -9449,7 +9536,7 @@ diff -up firefox-84.0/media/ffvpx/va/va_version.h.ffvpx firefox-84.0/media/ffvpx
|
||||
+#endif /* VA_VERSION_H */
|
||||
diff -up firefox-84.0/widget/gtk/DMABufSurface.h.ffvpx firefox-84.0/widget/gtk/DMABufSurface.h
|
||||
--- firefox-84.0/widget/gtk/DMABufSurface.h.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/widget/gtk/DMABufSurface.h 2020-12-10 17:05:06.121983932 +0100
|
||||
+++ firefox-84.0/widget/gtk/DMABufSurface.h 2020-12-10 20:40:53.391541423 +0100
|
||||
@@ -8,10 +8,9 @@
|
||||
#define DMABufSurface_h__
|
||||
|
||||
@ -9474,7 +9561,7 @@ diff -up firefox-84.0/widget/gtk/DMABufSurface.h.ffvpx firefox-84.0/widget/gtk/D
|
||||
typedef enum {
|
||||
diff -up firefox-84.0/widget/gtk/nsWaylandDisplay.cpp.ffvpx firefox-84.0/widget/gtk/nsWaylandDisplay.cpp
|
||||
--- firefox-84.0/widget/gtk/nsWaylandDisplay.cpp.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/widget/gtk/nsWaylandDisplay.cpp 2020-12-10 17:05:06.121983932 +0100
|
||||
+++ firefox-84.0/widget/gtk/nsWaylandDisplay.cpp 2020-12-10 20:40:53.391541423 +0100
|
||||
@@ -6,6 +6,10 @@
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
@ -9488,7 +9575,7 @@ diff -up firefox-84.0/widget/gtk/nsWaylandDisplay.cpp.ffvpx firefox-84.0/widget/
|
||||
namespace mozilla {
|
||||
diff -up firefox-84.0/widget/gtk/nsWaylandDisplay.h.ffvpx firefox-84.0/widget/gtk/nsWaylandDisplay.h
|
||||
--- firefox-84.0/widget/gtk/nsWaylandDisplay.h.ffvpx 2020-12-08 00:35:05.000000000 +0100
|
||||
+++ firefox-84.0/widget/gtk/nsWaylandDisplay.h 2020-12-10 17:05:06.122983961 +0100
|
||||
+++ firefox-84.0/widget/gtk/nsWaylandDisplay.h 2020-12-10 20:40:53.391541423 +0100
|
||||
@@ -10,10 +10,6 @@
|
||||
|
||||
#include "DMABufLibWrapper.h"
|
||||
|
41
firefox.spec
41
firefox.spec
@ -4,6 +4,8 @@
|
||||
%global build_with_clang 0
|
||||
%global build_with_asan 0
|
||||
%global run_firefox_tests 1
|
||||
%global test_offscreen 1
|
||||
%global test_on_wayland 1
|
||||
%global create_debuginfo 1
|
||||
%global system_nss 0
|
||||
|
||||
@ -53,8 +55,6 @@
|
||||
%if %{release_build}
|
||||
%global build_with_pgo 1
|
||||
%endif
|
||||
# Build PGO builds on Wayland backend
|
||||
%global pgo_wayland 0
|
||||
%endif
|
||||
%global wayland_backend_default 1
|
||||
%if 0%{?flatpak}
|
||||
@ -150,6 +150,7 @@ Source37: mochitest-python.tar.gz
|
||||
Source38: print_results
|
||||
Source39: print_subtest
|
||||
Source40: run-tests
|
||||
Source41: run-tests-wayland
|
||||
|
||||
# Build patches
|
||||
Patch3: mozilla-build-arm.patch
|
||||
@ -185,9 +186,9 @@ Patch402: mozilla-1196777.patch
|
||||
Patch407: mozilla-1667096.patch
|
||||
Patch408: mozilla-1663844.patch
|
||||
Patch415: mozilla-1670333.patch
|
||||
Patch416: mozilla-1673202.patch
|
||||
Patch418: mozilla-1556931-s390x-hidden-syms.patch
|
||||
Patch420: mozilla-1678680.patch
|
||||
Patch421: mozilla-1680505.patch
|
||||
|
||||
# Upstream patches from mozbz#1672944
|
||||
Patch450: pw1.patch
|
||||
@ -284,7 +285,7 @@ BuildRequires: pkgconfig(libffi)
|
||||
%if 0%{?use_xvfb}
|
||||
BuildRequires: xorg-x11-server-Xvfb
|
||||
%endif
|
||||
%if 0%{?pgo_wayland}
|
||||
%if 0%{?test_on_wayland}
|
||||
BuildRequires: mutter
|
||||
BuildRequires: gsettings-desktop-schemas
|
||||
BuildRequires: gnome-settings-daemon
|
||||
@ -403,9 +404,6 @@ This package contains results of tests executed during build.
|
||||
%patch407 -p1 -b .1667096
|
||||
%patch408 -p1 -b .1663844
|
||||
%patch415 -p1 -b .1670333
|
||||
%if 0%{?fedora} > 33 || 0%{?eln}
|
||||
%patch416 -p1 -b .1673202
|
||||
%endif
|
||||
%patch418 -p1 -b .1556931-s390x-hidden-syms
|
||||
|
||||
#%patch450 -p1 -b .pw1
|
||||
@ -415,11 +413,13 @@ This package contains results of tests executed during build.
|
||||
#%patch454 -p1 -b .pw5
|
||||
%patch455 -p1 -b .pw6
|
||||
%patch420 -p1 -b .1678680
|
||||
%patch421 -p1 -b .1680505
|
||||
|
||||
%patch500 -p1 -b .ffvpx
|
||||
|
||||
# VA-API fixes
|
||||
%patch585 -p1 -b .firefox-vaapi-extra-frames
|
||||
# merged with ffvpx
|
||||
# %patch585 -p1 -b .firefox-vaapi-extra-frames
|
||||
|
||||
# PGO patches
|
||||
%if %{build_with_pgo}
|
||||
@ -666,6 +666,7 @@ MOZ_SMP_FLAGS=-j1
|
||||
[ "$RPM_BUILD_NCPUS" -ge 16 ] && MOZ_SMP_FLAGS=-j16
|
||||
[ "$RPM_BUILD_NCPUS" -ge 24 ] && MOZ_SMP_FLAGS=-j24
|
||||
[ "$RPM_BUILD_NCPUS" -ge 32 ] && MOZ_SMP_FLAGS=-j32
|
||||
#[ "$RPM_BUILD_NCPUS" -ge 64 ] && MOZ_SMP_FLAGS=-j64
|
||||
%endif
|
||||
|
||||
echo "mk_add_options MOZ_MAKE_FLAGS=\"$MOZ_SMP_FLAGS\"" >> .mozconfig
|
||||
@ -673,8 +674,10 @@ echo "mk_add_options MOZ_SERVICES_SYNC=1" >> .mozconfig
|
||||
echo "export STRIP=/bin/true" >> .mozconfig
|
||||
export MACH_USE_SYSTEM_PYTHON=1
|
||||
export MACH_NO_WRITE_TIMES=1
|
||||
|
||||
%if %{build_with_pgo}
|
||||
%if %{pgo_wayland}
|
||||
%if %{test_offscreen}
|
||||
%if %{test_on_wayland}
|
||||
if [ -z "$XDG_RUNTIME_DIR" ]; then
|
||||
export XDG_RUNTIME_DIR=$HOME
|
||||
fi
|
||||
@ -685,10 +688,18 @@ else
|
||||
export WAYLAND_DISPLAY=wayland-1
|
||||
fi
|
||||
MOZ_ENABLE_WAYLAND=1 ./mach build 2>&1 | cat -
|
||||
%else
|
||||
GDK_BACKEND=x11 xvfb-run ./mach build 2>&1 | cat -
|
||||
%endif
|
||||
%else
|
||||
%if !%{test_on_wayland}
|
||||
MOZ_ENABLE_WAYLAND=0 xvfb-run ./mach build 2>&1 | cat -
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if !%{test_offscreen}
|
||||
MOZ_ENABLE_WAYLAND=%{test_on_wayland} ./mach build 2>&1 | cat -
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if !%{build_with_pgo}
|
||||
./mach build -v 2>&1 | cat -
|
||||
%endif
|
||||
|
||||
@ -706,9 +717,13 @@ find-links=`pwd`/mochitest-python
|
||||
no-index=true
|
||||
EOF
|
||||
tar xf %{SOURCE37}
|
||||
cp %{SOURCE40} %{SOURCE38} %{SOURCE39} .
|
||||
cp %{SOURCE40} %{SOURCE41} %{SOURCE38} %{SOURCE39} .
|
||||
mkdir -p test_results
|
||||
%if %{test_on_wayland}
|
||||
./run-tests-wayland %{test_offscreen}
|
||||
%else
|
||||
./run-tests
|
||||
%endif
|
||||
./print_results > test_summary.txt 2>&1
|
||||
%endif
|
||||
|
||||
|
34
mozilla-1680505.patch
Normal file
34
mozilla-1680505.patch
Normal file
@ -0,0 +1,34 @@
|
||||
diff --git a/widget/GfxInfoX11.cpp b/widget/GfxInfoX11.cpp
|
||||
--- a/widget/GfxInfoX11.cpp
|
||||
+++ b/widget/GfxInfoX11.cpp
|
||||
@@ -705,6 +705,14 @@
|
||||
DRIVER_GREATER_THAN_OR_EQUAL, V(18, 0, 0, 0),
|
||||
"FEATURE_ROLLOUT_INTEL_GNOME_X11_MESA", "Mesa 18.0.0.0");
|
||||
|
||||
+ APPEND_TO_DRIVER_BLOCKLIST_EXT(
|
||||
+ OperatingSystem::Linux, ScreenSizeStatus::SmallAndMedium,
|
||||
+ BatteryStatus::All, DesktopEnvironment::GNOME, WindowProtocol::Wayland,
|
||||
+ DriverVendor::MesaAll, DeviceFamily::IntelRolloutWebRender,
|
||||
+ nsIGfxInfo::FEATURE_WEBRENDER, nsIGfxInfo::FEATURE_ALLOW_ALWAYS,
|
||||
+ DRIVER_GREATER_THAN_OR_EQUAL, V(18, 0, 0, 0),
|
||||
+ "FEATURE_ROLLOUT_INTEL_GNOME_WAYLAND_MESA", "Mesa 18.0.0.0");
|
||||
+
|
||||
// ATI Mesa baseline, chosen arbitrarily.
|
||||
APPEND_TO_DRIVER_BLOCKLIST_EXT(
|
||||
OperatingSystem::Linux, ScreenSizeStatus::All, BatteryStatus::All,
|
||||
@@ -713,6 +721,14 @@
|
||||
nsIGfxInfo::FEATURE_ALLOW_ALWAYS, DRIVER_GREATER_THAN_OR_EQUAL,
|
||||
V(18, 0, 0, 0), "FEATURE_ROLLOUT_ATI_GNOME_X11_MESA", "Mesa 18.0.0.0");
|
||||
|
||||
+ APPEND_TO_DRIVER_BLOCKLIST_EXT(
|
||||
+ OperatingSystem::Linux, ScreenSizeStatus::All, BatteryStatus::All,
|
||||
+ DesktopEnvironment::GNOME, WindowProtocol::Wayland,
|
||||
+ DriverVendor::MesaAll, DeviceFamily::AtiRolloutWebRender,
|
||||
+ nsIGfxInfo::FEATURE_WEBRENDER, nsIGfxInfo::FEATURE_ALLOW_ALWAYS,
|
||||
+ DRIVER_GREATER_THAN_OR_EQUAL, V(18, 0, 0, 0),
|
||||
+ "FEATURE_ROLLOUT_ATI_GNOME_WAYLAND_MESA", "Mesa 18.0.0.0");
|
||||
+
|
||||
#ifdef EARLY_BETA_OR_EARLIER
|
||||
// Intel Mesa baseline, chosen arbitrarily.
|
||||
APPEND_TO_DRIVER_BLOCKLIST_EXT(
|
||||
|
35
run-tests-wayland
Executable file
35
run-tests-wayland
Executable file
@ -0,0 +1,35 @@
|
||||
#!/usr/bin/bash
|
||||
set -x
|
||||
|
||||
export MACH_USE_SYSTEM_PYTHON=1
|
||||
export MOZ_NODE_PATH=/usr/bin/node
|
||||
export MOCHITEST_PARAMS="--timeout 1 --chunk-by-dir 4"
|
||||
export TEST_DIR="test_results"
|
||||
|
||||
# Fix for system nss
|
||||
ln -s /usr/bin/certutil objdir/dist/bin/certutil
|
||||
ln -s /usr/bin/pk12util objdir/dist/bin/pk12util
|
||||
|
||||
NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"
|
||||
|
||||
# Basic render testing
|
||||
export TEST_PARAMS=""
|
||||
export TEST_FLAVOUR=""
|
||||
export MOZ_ENABLE_WAYLAND=1
|
||||
./mach mochitest $MOCHITEST_PARAMS $TEST_PARAMS >& $TEST_DIR/mochitest$TEST_FLAVOUR
|
||||
./mach crashtest $TEST_PARAMS --run-tests-in-parallel >& $TEST_DIR/crashtest$TEST_FLAVOUR
|
||||
./mach marionette-test $TEST_PARAMS >& $TEST_DIR/marionette$TEST_FLAVOUR
|
||||
./mach reftest $TEST_PARAMS --run-tests-in-parallel >& $TEST_DIR/reftest$TEST_FLAVOUR
|
||||
./mach xpcshell-test $TEST_PARAMS 2>&1 | cat - > $TEST_DIR/xpcshell$TEST_FLAVOUR
|
||||
|
||||
# WebRender testing
|
||||
export TEST_PARAMS="--enable-webrender $TEST_PARAMS"
|
||||
export TEST_FLAVOUR="-wr"
|
||||
./mach mochitest $MOCHITEST_PARAMS $TEST_PARAMS >& $TEST_DIR/mochitest$TEST_FLAVOUR
|
||||
./mach crashtest $TEST_PARAMS --run-tests-in-parallel >& $TEST_DIR/crashtest$TEST_FLAVOUR
|
||||
./mach marionette-test $TEST_PARAMS >& $TEST_DIR/marionette$TEST_FLAVOUR
|
||||
./mach reftest $TEST_PARAMS --run-tests-in-parallel >& $TEST_DIR/reftest$TEST_FLAVOUR
|
||||
./mach xpcshell-test $TEST_PARAMS 2>&1 | cat - > $TEST_DIR/xpcshell$TEST_FLAVOUR
|
||||
|
||||
rm -f objdir/dist/bin/certutil
|
||||
rm -f objdir/dist/bin/pk12util
|
Loading…
Reference in New Issue
Block a user