void-packages/srcpkgs/qt5/patches/qtwebengine-system-libs.patch
Jürgen Buchmüller 394a9f4f5d qt5: fix armv6* by using more system libs
Use ffmpeg (libavcodec, libavformat, libavutil), libevent,
jsoncpp, and protobuf system libraries instead of the ones
shipped with qtwebengine and chromium.
Now armv6* builds succeed because the problematic vp8 is handled
by the system ffmpeg package, where it is disabled for armv6*

Fix leaking of CFLAGS and LDFLAGS into the installed mkspecs.
This should fix building qt5-webkit for cross targets.
2017-03-06 01:27:12 +01:00

62 lines
2.6 KiB
Diff

--- qtwebengine/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h
+++ qtwebengine/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h
@@ -21,10 +21,6 @@
// Include FFmpeg header files.
extern "C" {
-// Disable deprecated features which result in spammy compile warnings. This
-// list of defines must mirror those in the 'defines' section of BUILD.gn file &
-// ffmpeg.gyp file or the headers below will generate different structures!
-#define FF_API_CONVERGENCE_DURATION 0
// Upstream libavcodec/utils.c still uses the deprecated
// av_dup_packet(), causing deprecation warnings.
// The normal fix for such things is to disable the feature as below,
@@ -39,7 +35,6 @@ MSVC_PUSH_DISABLE_WARNING(4244);
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#if !defined(USE_SYSTEM_FFMPEG)
-#include <libavformat/internal.h>
#endif
#include <libavformat/avio.h>
#include <libavutil/avutil.h>
--- qtwebengine/src/3rdparty/chromium/media/filters/ffmpeg_demuxer.cc
+++ qtwebengine/src/3rdparty/chromium/media/filters/ffmpeg_demuxer.cc
@@ -1036,24 +1036,6 @@ void FFmpegDemuxer::OnFindStreamInfoDone(const PipelineStatusCB& status_cb,
std::vector<base::TimeDelta> start_time_estimates(format_context->nb_streams,
kInfiniteDuration());
#if !defined(USE_SYSTEM_FFMPEG)
- const AVFormatInternal* internal = format_context->internal;
- if (internal && internal->packet_buffer &&
- format_context->start_time != static_cast<int64_t>(AV_NOPTS_VALUE)) {
- struct AVPacketList* packet_buffer = internal->packet_buffer;
- while (packet_buffer != internal->packet_buffer_end) {
- DCHECK_LT(static_cast<size_t>(packet_buffer->pkt.stream_index),
- start_time_estimates.size());
- const AVStream* stream =
- format_context->streams[packet_buffer->pkt.stream_index];
- if (packet_buffer->pkt.pts != static_cast<int64_t>(AV_NOPTS_VALUE)) {
- const base::TimeDelta packet_pts =
- ConvertFromTimeBase(stream->time_base, packet_buffer->pkt.pts);
- if (packet_pts < start_time_estimates[stream->index])
- start_time_estimates[stream->index] = packet_pts;
- }
- packet_buffer = packet_buffer->next;
- }
- }
#endif
AVStream* audio_stream = NULL;
--- qtwebengine/src/core/config/linux.pri
+++ qtwebengine/src/core/config/linux.pri
@@ -21,6 +21,11 @@ GYP_CONFIG += \
use_pango=0 \
use_openssl=1
+GYP_CONFIG += \
+ enable_webrtc=0 \
+ use_system_ffmpeg=1 \
+ use_system_nss=1
+
use?(nss) {
GYP_CONFIG += use_nss_certs=1 \
use_openssl_certs=0