diff options
author | Eric Hameleers <alien@slackware.com> | 2019-10-23 09:33:38 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2019-10-23 09:33:38 +0000 |
commit | 0a0bf9e3a514ec4614ace7fd19ddbd6cc73e076d (patch) | |
tree | f0df6f108121c6e26a0ca8615b7c52fe11b5f9f6 /calibre/build/patches | |
parent | 0930c5a34d53cf2d3964998f5f9e4c710e09d3f9 (diff) | |
download | asb-0a0bf9e3a514ec4614ace7fd19ddbd6cc73e076d.tar.gz asb-0a0bf9e3a514ec4614ace7fd19ddbd6cc73e076d.tar.xz |
Initial revision
Diffstat (limited to '')
-rw-r--r-- | calibre/build/patches/pyqt5-python2-crash.patch | 13 | ||||
-rw-r--r-- | calibre/build/patches/qt5.qtbug-77037.patch | 89 | ||||
-rw-r--r-- | calibre/build/patches/qt5.qtbug-77364.patch | 13 |
3 files changed, 115 insertions, 0 deletions
diff --git a/calibre/build/patches/pyqt5-python2-crash.patch b/calibre/build/patches/pyqt5-python2-crash.patch new file mode 100644 index 00000000..14462f75 --- /dev/null +++ b/calibre/build/patches/pyqt5-python2-crash.patch @@ -0,0 +1,13 @@ +diff -ur PyQt5_gpl-5.12.3/qpy/QtCore/qpycore_post_init.cpp.in PyQt5_gpl-5.12.3b/qpy/QtCore/qpycore_post_init.cpp.in +--- PyQt5_gpl-5.12.3/qpy/QtCore/qpycore_post_init.cpp.in 2019-06-25 14:41:02.000000000 +0200 ++++ PyQt5_gpl-5.12.3b/qpy/QtCore/qpycore_post_init.cpp.in 2019-07-01 17:06:34.882644535 +0200 +@@ -151,8 +151,4 @@ + // initialised first (at least for Windows) and this is the only way to + // guarantee things are done in the right order. + PyQtSlotProxy::mutex = new QMutex(QMutex::Recursive); +- +- // Load the embedded qt.conf file if there is a bundled copy of Qt. +- if (!qpycore_qt_conf()) +- Py_FatalError("PyQt5.QtCore: Unable to embed qt.conf"); + } + diff --git a/calibre/build/patches/qt5.qtbug-77037.patch b/calibre/build/patches/qt5.qtbug-77037.patch new file mode 100644 index 00000000..4dac59a9 --- /dev/null +++ b/calibre/build/patches/qt5.qtbug-77037.patch @@ -0,0 +1,89 @@ +From 0b57f15958f07ef12c8944d6db7a33a6fe9d9c59 Mon Sep 17 00:00:00 2001 +From: Allan Sandfeld Jensen <allan.jensen@qt.io> +Date: Mon, 23 Sep 2019 13:49:53 +0200 +Subject: Fix building with pulseaudio 13 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The function signature changed though the ABI stayed the same. + +Change-Id: I86ca361b5e4f0c523e1031910df438c23beee876 +Fixes: QTBUG-77037 +Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> +--- + chromium/media/audio/pulse/pulse.sigs | 16 ++++++++-------- + chromium/media/audio/pulse/pulse_stub_header.fragment | 11 +++++++++++ + 2 files changed, 19 insertions(+), 8 deletions(-) + +diff --git a/chromium/media/audio/pulse/pulse.sigs b/chromium/media/audio/pulse/pulse.sigs +index 8b5888786a9..daaeb149c13 100644 +--- a/chromium/media/audio/pulse/pulse.sigs ++++ b/chromium/media/audio/pulse/pulse.sigs +@@ -24,11 +24,11 @@ pa_operation* pa_context_get_source_info_by_index(pa_context* c, uint32_t idx, p + pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); + pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); + pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); +-pa_context_state_t pa_context_get_state(pa_context* c); ++pa_context_state_t pa_context_get_state(const_pa_context_ptr c); + pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); + pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); + void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +-pa_operation_state_t pa_operation_get_state(pa_operation* o); ++pa_operation_state_t pa_operation_get_state(const_pa_operation_ptr o); + void pa_context_unref(pa_context* c); + void pa_operation_unref(pa_operation* o); + int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes); +@@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* s, int b, pa_stream_success_cb_t cb, voi + int pa_stream_disconnect(pa_stream* s); + int pa_stream_drop(pa_stream *p); + pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata); +-uint32_t pa_stream_get_device_index(pa_stream* s); ++uint32_t pa_stream_get_device_index(const_pa_stream_ptr s); + int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative); +-pa_stream_state_t pa_stream_get_state(pa_stream* p); ++pa_stream_state_t pa_stream_get_state(const_pa_stream_ptr p); + pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map); + pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p); + pa_proplist* pa_proplist_new(void); +-int pa_proplist_contains(pa_proplist* p, const char* key); ++int pa_proplist_contains(const_pa_proplist_ptr p, const char* key); + void pa_proplist_free(pa_proplist* p); +-const char* pa_proplist_gets(pa_proplist* p, const char* key); ++const char* pa_proplist_gets(const_pa_proplist_ptr p, const char* key); + int pa_proplist_sets(pa_proplist* p, const char* key, const char* value); +-size_t pa_stream_readable_size(pa_stream *p); ++size_t pa_stream_readable_size(const_pa_stream_ptr p); + int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes); + void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata); + void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata); + int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek); + void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata); + void pa_stream_unref(pa_stream* s); +-int pa_context_errno(pa_context *c); ++int pa_context_errno(const_pa_context_ptr c); + const char* pa_strerror(int error); + pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v); +diff --git a/chromium/media/audio/pulse/pulse_stub_header.fragment b/chromium/media/audio/pulse/pulse_stub_header.fragment +index 2a2d3e7552b..cdaa841b29f 100644 +--- a/chromium/media/audio/pulse/pulse_stub_header.fragment ++++ b/chromium/media/audio/pulse/pulse_stub_header.fragment +@@ -5,4 +5,15 @@ extern "C" { + + #include <pulse/pulseaudio.h> + ++#if PA_MAJOR > 12 ++typedef const pa_context* const_pa_context_ptr; ++typedef const pa_operation* const_pa_operation_ptr; ++typedef const pa_proplist* const_pa_proplist_ptr; ++typedef const pa_stream* const_pa_stream_ptr; ++#else ++typedef pa_context* const_pa_context_ptr; ++typedef pa_operation* const_pa_operation_ptr; ++typedef pa_proplist* const_pa_proplist_ptr; ++typedef pa_stream* const_pa_stream_ptr; ++#endif + } +-- +cgit v1.2.1 + diff --git a/calibre/build/patches/qt5.qtbug-77364.patch b/calibre/build/patches/qt5.qtbug-77364.patch new file mode 100644 index 00000000..088856c7 --- /dev/null +++ b/calibre/build/patches/qt5.qtbug-77364.patch @@ -0,0 +1,13 @@ +diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp +index 04290a4ce1..27773d5762 100644 +--- a/src/widgets/kernel/qwidget.cpp ++++ b/src/widgets/kernel/qwidget.cpp +@@ -6446,7 +6446,7 @@ void QWidget::setFocusProxy(QWidget * w) + + if (changingAppFocusWidget) { + QWidget *newDeepestFocusProxy = d_func()->deepestFocusProxy(); +- QApplicationPrivate::focus_widget = newDeepestFocusProxy ? newDeepestFocusProxy : this; ++ QApplicationPrivate::setFocusWidget(newDeepestFocusProxy ? newDeepestFocusProxy : this, Qt::NoFocusReason); + } + } + |