public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-python/nautilus-python/files/, dev-python/nautilus-python/
@ 2020-08-27 15:43 Conrad Kostecki
  0 siblings, 0 replies; only message in thread
From: Conrad Kostecki @ 2020-08-27 15:43 UTC (permalink / raw
  To: gentoo-commits

commit:     03a33031108b8245b2828cda7e8a3a231feaabec
Author:     Alexandru-Sever Horin <alex.sever.h <AT> gmail <DOT> com>
AuthorDate: Tue Jun  9 15:59:58 2020 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Thu Aug 27 15:36:45 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=03a33031

dev-python/nautilus-python: fix compilation with GCC10

Fixed compilation with GCC10.

Closes: https://bugs.gentoo.org/727514
Closes: https://github.com/gentoo/gentoo/pull/16137
Signed-off-by: Alexandru-Sever Horin <alex.sever.h <AT> gmail.com>
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 .../nautilus-python-1.2.3-gcc10-fnocommon.patch    | 147 +++++++++++++++++++++
 .../nautilus-python/nautilus-python-1.2.3.ebuild   |   3 +
 2 files changed, 150 insertions(+)

diff --git a/dev-python/nautilus-python/files/nautilus-python-1.2.3-gcc10-fnocommon.patch b/dev-python/nautilus-python/files/nautilus-python-1.2.3-gcc10-fnocommon.patch
new file mode 100644
index 00000000000..7e0f760aca2
--- /dev/null
+++ b/dev-python/nautilus-python/files/nautilus-python-1.2.3-gcc10-fnocommon.patch
@@ -0,0 +1,147 @@
+From bd4820186751034c6b5acb9c71b1aeab03c56523 Mon Sep 17 00:00:00 2001
+From: Andreas Henriksson <andreas@fatal.se>
+Date: Mon, 11 May 2020 14:57:45 +0200
+Subject: [PATCH] Fix build with gcc 10
+
+Bug-Debian: https://bugs.debian.org/957578
+Forwarded: https://gitlab.gnome.org/GNOME/nautilus-python/-/merge_requests/7
+Last-Update: 2020-05-11
+---
+ src/nautilus-python-object.c | 10 +++++-----
+ src/nautilus-python.c        | 13 +++++++++++++
+ src/nautilus-python.h        | 22 +++++++++++-----------
+ 3 files changed, 29 insertions(+), 16 deletions(-)
+
+diff --git a/src/nautilus-python-object.c b/src/nautilus-python-object.c
+index f343070..da185ad 100644
+--- a/src/nautilus-python-object.c
++++ b/src/nautilus-python-object.c
+@@ -40,7 +40,7 @@ int __PyString_Check(PyObject *obj) {
+ #endif
+ }
+ 
+-char* __PyString_AsString(PyObject *obj) {
++const char* __PyString_AsString(PyObject *obj) {
+ #if PY_MAJOR_VERSION >= 3
+     return PyUnicode_AsUTF8(obj);
+ #else
+@@ -389,7 +389,7 @@ beach:
+ #define METHOD_NAME "update_file_info"
+ static NautilusOperationResult
+ nautilus_python_object_update_file_info (NautilusInfoProvider         *provider,
+-                                         NautilusFile                 *file,
++                                         NautilusFileInfo             *file_info,
+                                          GClosure                     *update_complete,
+                                          NautilusOperationHandle   **handle) {
+     NautilusPythonObject *object = (NautilusPythonObject*)provider;
+@@ -408,12 +408,12 @@ nautilus_python_object_update_file_info (NautilusInfoProvider         *provider,
+                                      pygobject_new((GObject*)provider),
+                                      py_handle,
+                                      pyg_boxed_new(G_TYPE_CLOSURE, update_complete, TRUE, TRUE),
+-                                     pygobject_new((GObject*)file));
++                                     pygobject_new((GObject*)file_info));
+     }
+     else if (PyObject_HasAttrString(object->instance, "update_file_info")) {
+         py_ret = PyObject_CallMethod(object->instance,
+                                      METHOD_PREFIX METHOD_NAME, "(N)",
+-                                     pygobject_new((GObject*)file));
++                                     pygobject_new((GObject*)file_info));
+     }
+     else {
+         goto beach;
+@@ -434,7 +434,7 @@ nautilus_python_object_update_file_info (NautilusInfoProvider         *provider,
+ #endif
+ 
+ beach:
+-    free_pygobject_data(file, NULL);
++    free_pygobject_data(file_info, NULL);
+     Py_XDECREF(py_ret);
+     pyg_gil_state_release(state);
+     return ret;
+diff --git a/src/nautilus-python.c b/src/nautilus-python.c
+index 843e3c6..510cdfb 100644
+--- a/src/nautilus-python.c
++++ b/src/nautilus-python.c
+@@ -22,6 +22,7 @@
+ #endif
+ 
+ #include <Python.h>
++#define NO_IMPORT_PYGOBJECT //To avoid a multiple definition, nautilus-python-object.c also includes and does the import.
+ #include <pygobject.h>
+ #include <gmodule.h>
+ #include <gtk/gtk.h>
+@@ -42,6 +43,18 @@ static gboolean nautilus_python_init_python(void);
+ static GArray *all_types = NULL;
+ 
+ 
++PyTypeObject *_PyGtkWidget_Type;
++PyTypeObject *_PyNautilusColumn_Type;
++PyTypeObject *_PyNautilusColumnProvider_Type;
++PyTypeObject *_PyNautilusInfoProvider_Type;
++PyTypeObject *_PyNautilusLocationWidgetProvider_Type;
++PyTypeObject *_PyNautilusMenu_Type;
++PyTypeObject *_PyNautilusMenuItem_Type;
++PyTypeObject *_PyNautilusMenuProvider_Type;
++PyTypeObject *_PyNautilusPropertyPage_Type;
++PyTypeObject *_PyNautilusPropertyPageProvider_Type;
++PyTypeObject *_PyNautilusOperationHandle_Type;
++
+ static inline gboolean 
+ np_init_pygobject(void) {
+     PyObject *gobject = pygobject_init (PYGOBJECT_MAJOR_VERSION, PYGOBJECT_MINOR_VERSION, PYGOBJECT_MICRO_VERSION);
+diff --git a/src/nautilus-python.h b/src/nautilus-python.h
+index 4c181f8..c940a06 100644
+--- a/src/nautilus-python.h
++++ b/src/nautilus-python.h
+@@ -43,37 +43,37 @@ extern NautilusPythonDebug nautilus_python_debug;
+ #define debug_enter_args(x, y) { if (nautilus_python_debug & NAUTILUS_PYTHON_DEBUG_MISC) \
+                                      g_printf("%s: entered " x "\n", __FUNCTION__, y); }
+ 
+-PyTypeObject *_PyGtkWidget_Type;
++extern PyTypeObject *_PyGtkWidget_Type;
+ #define PyGtkWidget_Type (*_PyGtkWidget_Type)
+ 
+-PyTypeObject *_PyNautilusColumn_Type;
++extern PyTypeObject *_PyNautilusColumn_Type;
+ #define PyNautilusColumn_Type (*_PyNautilusColumn_Type)
+ 
+-PyTypeObject *_PyNautilusColumnProvider_Type;
++extern PyTypeObject *_PyNautilusColumnProvider_Type;
+ #define PyNautilusColumnProvider_Type (*_PyNautilusColumnProvider_Type)
+ 
+-PyTypeObject *_PyNautilusInfoProvider_Type;
++extern PyTypeObject *_PyNautilusInfoProvider_Type;
+ #define PyNautilusInfoProvider_Type (*_PyNautilusInfoProvider_Type)
+ 
+-PyTypeObject *_PyNautilusLocationWidgetProvider_Type;
++extern PyTypeObject *_PyNautilusLocationWidgetProvider_Type;
+ #define PyNautilusLocationWidgetProvider_Type (*_PyNautilusLocationWidgetProvider_Type)
+ 
+-PyTypeObject *_PyNautilusMenu_Type;
++extern PyTypeObject *_PyNautilusMenu_Type;
+ #define PyNautilusMenu_Type (*_PyNautilusMenu_Type)
+ 
+-PyTypeObject *_PyNautilusMenuItem_Type;
++extern PyTypeObject *_PyNautilusMenuItem_Type;
+ #define PyNautilusMenuItem_Type (*_PyNautilusMenuItem_Type)
+ 
+-PyTypeObject *_PyNautilusMenuProvider_Type;
++extern PyTypeObject *_PyNautilusMenuProvider_Type;
+ #define PyNautilusMenuProvider_Type (*_PyNautilusMenuProvider_Type)
+ 
+-PyTypeObject *_PyNautilusPropertyPage_Type;
++extern PyTypeObject *_PyNautilusPropertyPage_Type;
+ #define PyNautilusPropertyPage_Type (*_PyNautilusPropertyPage_Type)
+ 
+-PyTypeObject *_PyNautilusPropertyPageProvider_Type;
++extern PyTypeObject *_PyNautilusPropertyPageProvider_Type;
+ #define PyNautilusPropertyPageProvider_Type (*_PyNautilusPropertyPageProvider_Type)
+ 
+-PyTypeObject *_PyNautilusOperationHandle_Type;
++extern PyTypeObject *_PyNautilusOperationHandle_Type;
+ #define PyNautilusOperationHandle_Type (*_PyNautilusOperationHandle_Type)
+ 
+ #endif /* NAUTILUS_PYTHON_H */
+-- 
+2.26.2
+

diff --git a/dev-python/nautilus-python/nautilus-python-1.2.3.ebuild b/dev-python/nautilus-python/nautilus-python-1.2.3.ebuild
index 8258df11b31..7e34de01bb8 100644
--- a/dev-python/nautilus-python/nautilus-python-1.2.3.ebuild
+++ b/dev-python/nautilus-python/nautilus-python-1.2.3.ebuild
@@ -31,6 +31,9 @@ DEPEND="${RDEPEND}
 	virtual/pkgconfig
 "
 
+# https://gitlab.gnome.org/GNOME/nautilus-python/-/merge_requests/7
+PATCHES=( "${FILESDIR}"/${P}-gcc10-fnocommon.patch )
+
 src_install() {
 	gnome2_src_install
 	# Directory for systemwide extensions


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2020-08-27 15:43 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-08-27 15:43 [gentoo-commits] repo/gentoo:master commit in: dev-python/nautilus-python/files/, dev-python/nautilus-python/ Conrad Kostecki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox