Closed kloczek closed 3 years ago
It would be really good to move to gtksourceview-4 because gtksourceview-3.0 is no longer maintained and already has been released first version of gtksourceview-5.
pluma 1.25.0 was possible to build against gtksourceview-4 using very simple patch:
--- pluma-1.22.1/configure.ac~ 2019-04-27 06:54:59.000000000 +0100 +++ pluma-1.22.1/configure.ac 2019-04-27 07:03:32.738444499 +0100 @@ -151,7 +151,7 @@ AM_CONDITIONAL(ENABLE_ENCHANT, test x"$enable_enchant" = "xyes") GTK_REQUIRED=3.22.0 -GTKSOURCEVIEW_REQUIRED=3.0.0 +GTKSOURCEVIEW_REQUIRED=4.0.0 PKG_CHECK_MODULES(GMODULE,gmodule-2.0,[GMODULE_ADD="gmodule-2.0"],[GMODULE_ADD=""]) PKG_CHECK_MODULES(PLUMA, [ @@ -161,7 +161,7 @@ gthread-2.0 >= 2.13.0 gio-2.0 >= 2.50.0 gtk+-3.0 >= $GTK_REQUIRED - gtksourceview-3.0 >= $GTKSOURCEVIEW_REQUIRED + gtksourceview-4 >= $GTKSOURCEVIEW_REQUIRED libpeas-1.0 >= 1.2.0 libpeas-gtk-1.0 >= 1.2.0 ]) --- pluma-1.22.1/pluma/Makefile.am~ 2019-04-23 12:05:42.000000000 +0100 +++ pluma-1.22.1/pluma/Makefile.am 2019-04-27 07:13:10.121140462 +0100 @@ -199,7 +199,7 @@ INTROSPECTION_SCANNER_ARGS = -I$(top_srcdir) --warn-all Pluma-1.0.gir: pluma -Pluma_1_0_gir_INCLUDES = Gtk-3.0 GtkSource-3.0 +Pluma_1_0_gir_INCLUDES = Gtk-3.0 GtkSource-4 Pluma_1_0_gir_FILES = $(INST_H_FILES) $(libpluma_c_files) $(BUILT_SOURCES) Pluma_1_0_gir_VERSION = 1.0 Pluma_1_0_gir_PROGRAM = $(builddir)/pluma --- pluma-1.22.1/data/pluma.pc.in~ 2019-04-23 12:05:42.000000000 +0100 +++ pluma-1.22.1/data/pluma.pc.in 2019-04-27 07:26:47.647359917 +0100 @@ -6,7 +6,7 @@ Name: pluma Description: pluma -Requires: gtksourceview-3.0 libpeas-1.0 libpeas-gtk-1.0 +Requires: gtksourceview-4 libpeas-1.0 libpeas-gtk-1.0 Version: @VERSION@ Cflags: -I${includedir}/pluma Libs: -L${libdir}
Now it fails with
make[4]: Entering directory '/home/tkloczko/rpmbuild/BUILD/pluma-1.25.1/pluma' /bin/sh ../libtool --tag=CC --mode=compile /usr/bin/gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I. -I./mate-submodules/libegg -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/atk-1.0 -I/usr/include/gtksourceview-4 -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -pthread -Wall -Wmissing-prototypes -I/usr/include/gobject-introspection-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DDATADIR=\""/usr/share"\" -DPLUMA_DATADIR=\""/usr/share/pluma"\" -DPLUMA_LOCALEDIR=\""/usr/share/locale/"\" -DLIBDIR=\""/usr/lib64"\" -DPLUMA_LIBDIR=\""/usr/lib64/pluma"\" -O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -Os -c -o pluma-document.lo pluma-document.c libtool: compile: /usr/bin/gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I. -I./mate-submodules/libegg -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/atk-1.0 -I/usr/include/gtksourceview-4 -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -pthread -Wall -Wmissing-prototypes -I/usr/include/gobject-introspection-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DDATADIR=\"/usr/share\" -DPLUMA_DATADIR=\"/usr/share/pluma\" -DPLUMA_LOCALEDIR=\"/usr/share/locale/\" -DLIBDIR=\"/usr/lib64\" -DPLUMA_LIBDIR=\"/usr/lib64/pluma\" -O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -Os -c pluma-document.c -fPIC -DPIC -o .libs/pluma-document.o In file included from /usr/include/gtksourceview-4/gtksourceview/gtksourcetypes.h:28, from /usr/include/gtksourceview-4/gtksourceview/gtksourcecompletioncontext.h:29, from /usr/include/gtksourceview-4/gtksourceview/gtksourcecompletionprovider.h:30, from /usr/include/gtksourceview-4/gtksourceview/completion-providers/words/gtksourcecompletionwords.h:28, from /usr/include/gtksourceview-4/gtksourceview/gtksource.h:23, from ../pluma/pluma-document.h:38, from ../pluma/pluma-view.h:36, from ../pluma/pluma-tab.h:36, from ../pluma/pluma-window.h:37, from pluma-app.h:36, from pluma-settings.h:30, from pluma-document.c:43: /usr/include/gtksourceview-4/gtksourceview/gtksourceversion.h:77:84: error: missing binary operator before token "(" 77 | (GTK_SOURCE_MAJOR_VERSION == (major) && GTK_SOURCE_MINOR_VERSION > ((gint) (minor))) || \ | ^ pluma-document.c:644:6: note: in expansion of macro ‘GTK_SOURCE_CHECK_VERSION’ 644 | #if !GTK_SOURCE_CHECK_VERSION (3, 24, 11) | ^~~~~~~~~~~~~~~~~~~~~~~~ pluma-document.c: In function ‘set_language’: /usr/include/gtksourceview-4/gtksourceview/gtksourceversion.h:77:84: error: missing binary operator before token "(" 77 | (GTK_SOURCE_MAJOR_VERSION == (major) && GTK_SOURCE_MINOR_VERSION > ((gint) (minor))) || \ | ^ pluma-document.c:696:6: note: in expansion of macro ‘GTK_SOURCE_CHECK_VERSION’ 696 | #if !GTK_SOURCE_CHECK_VERSION (3, 24, 11) | ^~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/gtksourceview-4/gtksourceview/gtksourceversion.h:77:84: error: missing binary operator before token "(" 77 | (GTK_SOURCE_MAJOR_VERSION == (major) && GTK_SOURCE_MINOR_VERSION > ((gint) (minor))) || \ | ^ pluma-document.c:712:6: note: in expansion of macro ‘GTK_SOURCE_CHECK_VERSION’ 712 | #if !GTK_SOURCE_CHECK_VERSION (3, 24, 11) | ^~~~~~~~~~~~~~~~~~~~~~~~ make[4]: *** [Makefile:915: pluma-document.lo] Error 1
It would be really good to move to gtksourceview-4 because gtksourceview-3.0 is no longer maintained and already has been released first version of gtksourceview-5.
pluma 1.25.0 was possible to build against gtksourceview-4 using very simple patch:
Now it fails with