public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-util/gnome-builder/files/, dev-util/gnome-builder/
@ 2018-08-29 21:57 Mart Raudsepp
  0 siblings, 0 replies; 7+ messages in thread
From: Mart Raudsepp @ 2018-08-29 21:57 UTC (permalink / raw
  To: gentoo-commits

commit:     72eade86bac797c6161cd3ad36a0fcfc6436b688
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 29 06:48:06 2018 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Wed Aug 29 21:56:45 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=72eade86

dev-util/gnome-builder: bump to 3.28.4

Package-Manager: Portage-2.3.48, Repoman-2.3.10

 dev-util/gnome-builder/Manifest                    |   1 +
 .../files/3.28.4-fix-docs-option.patch             |  42 +++++
 .../files/3.28.4-fix-tests-schemadir.patch         |  26 +++
 .../files/3.28.4-jedi-0.12-compat.patch            |  93 +++++++++++
 .../gnome-builder/files/3.28.4-python37-fix.patch  |  57 +++++++
 dev-util/gnome-builder/files/3.28.4-valac.patch    |  15 ++
 dev-util/gnome-builder/gnome-builder-3.28.4.ebuild | 185 +++++++++++++++++++++
 dev-util/gnome-builder/metadata.xml                |   1 +
 8 files changed, 420 insertions(+)

diff --git a/dev-util/gnome-builder/Manifest b/dev-util/gnome-builder/Manifest
index 555f60511b2..46650bd57a9 100644
--- a/dev-util/gnome-builder/Manifest
+++ b/dev-util/gnome-builder/Manifest
@@ -1 +1,2 @@
 DIST gnome-builder-3.24.2.tar.xz 4342908 BLAKE2B 5dca80d2e948041bc096fa9a2a5d39322c6fedb0560e3e4f3c60c7b0657c7c62e89387a63f7d050c3df90d8c129485bc5495039802548b22ae268d94c14a37ae SHA512 dec133ad3c5ef96a036598ebbe684667dc44f73d8643e700f1e776cf8eb860b99c1d333f1fed5bc896cb7bdcf607eb51fedb7bb1f5b0cc662e4b2703d74140bf
+DIST gnome-builder-3.28.4.tar.xz 9309060 BLAKE2B a4402452ffaf64cc767edb9cba65b74a88cb77d04ca2ffecd3b01c53382930891c2c03e2528861f4d28ca3643465b6767235e945f44cc37d2d716bcbb3ab25c8 SHA512 ef83b909f295d83478aa7d5deb8b5d8291ddf6134e147e88452cdba8ff449a2415d0381d63d3f82cf28942b1096a704de64540c8cdf5f06c21c8278c93fbbc03

diff --git a/dev-util/gnome-builder/files/3.28.4-fix-docs-option.patch b/dev-util/gnome-builder/files/3.28.4-fix-docs-option.patch
new file mode 100644
index 00000000000..ca2323f314a
--- /dev/null
+++ b/dev-util/gnome-builder/files/3.28.4-fix-docs-option.patch
@@ -0,0 +1,42 @@
+From 054ef6d2e47da9f41e7c24908b251d074e11a03b Mon Sep 17 00:00:00 2001
+From: Christian Hergert <chergert@redhat.com>
+Date: Wed, 8 Aug 2018 13:03:50 -0700
+Subject: [PATCH] help: fix get_option() to check for proper value
+
+We want to check for help docs, not sdk docs. Also, if enabled, don't be
+automatic about it. Fail hard so the caller knows there is an issue.
+---
+ doc/help/meson.build | 18 ++++++++----------
+ 1 file changed, 8 insertions(+), 10 deletions(-)
+
+diff --git a/doc/help/meson.build b/doc/help/meson.build
+index 1336e6a26..e684f078c 100644
+--- a/doc/help/meson.build
++++ b/doc/help/meson.build
+@@ -1,15 +1,13 @@
+-if get_option('with_docs')
++if get_option('with_help')
+ 
+-sphinx = find_program(['sphinx-build-3', 'sphinx-build'], required: false)
++sphinx = find_program(['sphinx-build-3', 'sphinx-build'], required: true)
+ 
+-if sphinx.found()
+-    custom_target('en user documentation',
+-                  command: [sphinx, '-b', 'html', '-c', meson.current_source_dir(), meson.current_source_dir(), '@OUTPUT@'],
+-                   output: 'en',
+-         build_by_default: true)
++custom_target('en user documentation',
++           command: [sphinx, '-b', 'html', '-c', meson.current_source_dir(), meson.current_source_dir(), '@OUTPUT@'],
++            output: 'en',
++  build_by_default: true
++)
+ 
+-
+-    install_subdir(meson.current_build_dir() + '/en', install_dir: pkgdocdir_abs)
+-endif
++install_subdir(meson.current_build_dir() + '/en', install_dir: pkgdocdir_abs)
+ 
+ endif
+-- 
+2.17.0
+

diff --git a/dev-util/gnome-builder/files/3.28.4-fix-tests-schemadir.patch b/dev-util/gnome-builder/files/3.28.4-fix-tests-schemadir.patch
new file mode 100644
index 00000000000..3c427c41584
--- /dev/null
+++ b/dev-util/gnome-builder/files/3.28.4-fix-tests-schemadir.patch
@@ -0,0 +1,26 @@
+From a66b2d99f21bff6986b0dda5b7cc9ee393be934a Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Wed, 29 Aug 2018 12:30:14 +0300
+Subject: [PATCH] build: Fix GSETTINGS_SCHEMA_DIR envvar handling in tests
+
+GSETTINGS_SCHEMA_DIR does not support multiple colon-separated paths.
+---
+ src/tests/meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/tests/meson.build b/src/tests/meson.build
+index 646f6f875..42c0e6d28 100644
+--- a/src/tests/meson.build
++++ b/src/tests/meson.build
+@@ -16,7 +16,7 @@ ide_test_env = [
+   'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()),
+   'G_DEBUG=gc-friendly',
+   'GSETTINGS_BACKEND=memory',
+-  'GSETTINGS_SCHEMA_DIR=@0@/data/gsettings:$(GSETTINGS_SCHEMA_DIR)'.format(meson.build_root()),
++  'GSETTINGS_SCHEMA_DIR=@0@/data/gsettings'.format(meson.build_root()),
+   'PYTHONDONTWRITEBYTECODE=yes',
+   'MALLOC_CHECK_=2',
+ #  'MALLOC_PERTURB_=$((${RANDOM:-256} % 256))',
+-- 
+2.17.0
+

diff --git a/dev-util/gnome-builder/files/3.28.4-jedi-0.12-compat.patch b/dev-util/gnome-builder/files/3.28.4-jedi-0.12-compat.patch
new file mode 100644
index 00000000000..4132e2d1bfe
--- /dev/null
+++ b/dev-util/gnome-builder/files/3.28.4-jedi-0.12-compat.patch
@@ -0,0 +1,93 @@
+From 799a378b96cad5dc9b1093604e76ed362d22f4cc Mon Sep 17 00:00:00 2001
+From: Christian Hergert <chergert@redhat.com>
+Date: Sun, 27 May 2018 20:19:34 -0700
+Subject: [PATCH] jedi: minimal attempt to get things working again
+
+This tries to get some of our jedi code working with recent API changes
+in the jedi project.
+
+This is just a minimal fix, and I'd expect some others may be needed for
+improved functionality.
+
+Fixes #403
+---
+ src/plugins/jedi/jedi_plugin.py | 44 ++++++++++++++++++++++-----------
+ 1 file changed, 29 insertions(+), 15 deletions(-)
+
+diff --git a/src/plugins/jedi/jedi_plugin.py b/src/plugins/jedi/jedi_plugin.py
+index fd8e15d68..052500da1 100644
+--- a/src/plugins/jedi/jedi_plugin.py
++++ b/src/plugins/jedi/jedi_plugin.py
+@@ -91,8 +91,14 @@ try:
+     import jedi
+     from jedi.evaluate.compiled import CompiledObject
+     from jedi.evaluate.compiled import get_special_object
+-    from jedi.evaluate.compiled import _create_from_name
+-    from jedi.evaluate.context import Context
++    try:
++        # 0.12
++        from jedi.evaluate.compiled import create_from_name
++        from jedi.evaluate.base_context import Context
++    except ImportError:
++        # Pre 0.12
++        from jedi.evaluate.compiled import _create_from_name as create_from_name
++        from jedi.evaluate.context import Context
+     from jedi.evaluate.docstrings import _evaluate_for_statement_string
+     from jedi.evaluate.imports import Importer
+ 
+@@ -175,23 +181,31 @@ try:
+                         pass
+             return module_list
+ 
+-    original_jedi_get_module = jedi.evaluate.compiled.fake.get_module
+-
+-    def patched_jedi_get_module(obj):
+-        "Work around a weird bug in jedi"
+-        try:
+-            return original_jedi_get_module(obj)
+-        except ImportError as e:
+-            if e.msg == "No module named 'gi._gobject._gobject'":
+-                return original_jedi_get_module('gi._gobject')
++    try:
++        # Pre 0.12 workaround
++        # TODO: What needs to be fixed here for 0.12?
++        original_jedi_get_module = jedi.evaluate.compiled.fake.get_module
++        def patched_jedi_get_module(obj):
++            "Work around a weird bug in jedi"
++            try:
++                return original_jedi_get_module(obj)
++            except ImportError as e:
++                if e.msg == "No module named 'gi._gobject._gobject'":
++                    return original_jedi_get_module('gi._gobject')
++        jedi.evaluate.compiled.fake.get_module = patched_jedi_get_module
++    except:
++        pass
+ 
+-    jedi.evaluate.compiled.fake.get_module = patched_jedi_get_module
+     jedi.evaluate.compiled.CompiledObject = PatchedJediCompiledObject
+-    jedi.evaluate.instance.CompiledBoundMethod = PatchedCompiledBoundMethod
++    try:
++        jedi.evaluate.instance.CompiledBoundMethod = PatchedCompiledBoundMethod
++    except AttributeError:
++        jedi.evaluate.context.instance.CompiledBoundMethod = PatchedCompiledBoundMethod
+     jedi.evaluate.imports.Importer = PatchedJediImporter
+     HAS_JEDI = True
+-except ImportError:
++except ImportError as ex:
+     print("jedi not found, python auto-completion not possible.")
++    print(ex)
+     HAS_JEDI = False
+ 
+ GIR_PATH_LIST = []
+@@ -376,7 +390,7 @@ class JediCompletionProvider(Ide.Object, GtkSource.CompletionProvider, Ide.Compl
+         return False
+ 
+     def do_populate(self, context):
+-        self.current_word = Ide.CompletionProvider.context_current_word(context)
++        self.current_word = Ide.CompletionProvider.context_current_word(context) or ''
+         self.current_word_lower = self.current_word.lower()
+ 
+         _, iter = context.get_iter()
+-- 
+2.17.0
+

diff --git a/dev-util/gnome-builder/files/3.28.4-python37-fix.patch b/dev-util/gnome-builder/files/3.28.4-python37-fix.patch
new file mode 100644
index 00000000000..2fc6ee5be06
--- /dev/null
+++ b/dev-util/gnome-builder/files/3.28.4-python37-fix.patch
@@ -0,0 +1,57 @@
+From e1d32d76231b1051a2380995f4a7822aa525375a Mon Sep 17 00:00:00 2001
+From: Simon McVittie <smcv@debian.org>
+Date: Wed, 11 Jul 2018 11:57:06 +0100
+Subject: [PATCH] Python: Avoid identifier 'async', which became a keyword in
+ 3.7
+
+This is an incompatible change, but so is async becoming an identifier.
+
+Fixes: #565
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=903558
+Signed-off-by: Simon McVittie <smcv@debian.org>
+---
+ src/libide/Ide.py               | 6 +++---
+ src/plugins/jedi/jedi_plugin.py | 2 +-
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/libide/Ide.py b/src/libide/Ide.py
+index 02bb61937..07d429c7a 100644
+--- a/src/libide/Ide.py
++++ b/src/libide/Ide.py
+@@ -41,9 +41,9 @@ class _Gio_DBusMethodInfo:
+     in_args = None
+     out_signature = None
+ 
+-def DBusMethod(dbus_interface, in_signature=None, out_signature=None, async=False):
++def DBusMethod(dbus_interface, in_signature=None, out_signature=None, is_async=False):
+     def decorator(func):
+-        func._is_async = async
++        func._is_async = is_async
+ 
+         func._dbus_method = _Gio_DBusMethodInfo()
+         func._dbus_method.interface = dbus_interface
+@@ -54,7 +54,7 @@ def DBusMethod(dbus_interface, in_signature=None, out_signature=None, async=Fals
+         in_signature_list = GLib.Variant.split_signature('('+in_signature+')')
+         arg_names = inspect.getargspec(func).args
+         arg_names.pop(0) # eat "self" argument
+-        if async: arg_names.pop(0) # eat "invocation"
++        if is_async: arg_names.pop(0) # eat "invocation"
+         if len(in_signature) != len(arg_names):
+             raise TypeError('specified signature %s for method %s does not match length of arguments' % (str(in_signature_list), func.func_name))
+         for pair in zip(in_signature_list, arg_names):
+diff --git a/src/plugins/jedi/jedi_plugin.py b/src/plugins/jedi/jedi_plugin.py
+index 84bd11c27..a346a342e 100644
+--- a/src/plugins/jedi/jedi_plugin.py
++++ b/src/plugins/jedi/jedi_plugin.py
+@@ -688,7 +688,7 @@ class JediService(Ide.DBusService):
+         self.queue = {}
+         self.handler_id = 0
+ 
+-    @Ide.DBusMethod('org.gnome.builder.plugins.jedi', in_signature='siis', out_signature='a(issass)', async=True)
++    @Ide.DBusMethod('org.gnome.builder.plugins.jedi', in_signature='siis', out_signature='a(issass)', is_async=True)
+     def CodeComplete(self, invocation, filename, line, column, content):
+         if filename in self.queue:
+             request = self.queue.pop(filename)
+-- 
+2.17.0
+

diff --git a/dev-util/gnome-builder/files/3.28.4-valac.patch b/dev-util/gnome-builder/files/3.28.4-valac.patch
new file mode 100644
index 00000000000..acb1c54f851
--- /dev/null
+++ b/dev-util/gnome-builder/files/3.28.4-valac.patch
@@ -0,0 +1,15 @@
+diff --git a/src/plugins/vala-pack/meson.build b/src/plugins/vala-pack/meson.build
+index dd36d351d..a8c53c6e5 100644
+--- a/src/plugins/vala-pack/meson.build
++++ b/src/plugins/vala-pack/meson.build
+@@ -6,8 +6,8 @@ endif
+ 
+ add_languages('vala')
+ 
+-valac = find_program ('valac')
+-libvala_version = run_command(valac, '--api-version').stdout().strip()
++valac = meson.get_compiler('vala')
++libvala_version = run_command(valac.cmd_array()[0], '--api-version').stdout().strip()
+ libvala = dependency('libvala-@0@'.format(libvala_version))
+ 
+ vala_pack_sources = [

diff --git a/dev-util/gnome-builder/gnome-builder-3.28.4.ebuild b/dev-util/gnome-builder/gnome-builder-3.28.4.ebuild
new file mode 100644
index 00000000000..9fb20da3c55
--- /dev/null
+++ b/dev-util/gnome-builder/gnome-builder-3.28.4.ebuild
@@ -0,0 +1,185 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python3_{4,5,6} )
+VALA_MIN_API_VERSION="0.36"
+DISABLE_AUTOFORMATTING=1
+FORCE_PRINT_ELOG=1
+
+inherit gnome.org gnome2-utils llvm meson python-single-r1 readme.gentoo-r1 vala virtualx xdg
+
+DESCRIPTION="An IDE for writing GNOME-based software"
+HOMEPAGE="https://wiki.gnome.org/Apps/Builder"
+
+# FIXME: Review licenses at some point
+LICENSE="GPL-3+ GPL-2+ LGPL-3+ LGPL-2+ MIT CC-BY-SA-3.0 CC0-1.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="clang +devhelp doc +git gtk-doc sysprof vala webkit"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# When bumping, pay attention to all the included plugins/*/meson.build (and other) build files and the requirements within.
+# `grep -rI dependency * --include='meson.build'` can give a good initial idea for external deps and their double checking.
+# The listed RDEPEND order shold roughly match that output as well, with toplevel one first.
+# Most plugins have no extra requirements and default to enabled; we need to handle the ones with extra requirements. Many of
+# them have optional runtime dependencies, for which we try to at least notify the user via DOC_CONTENTS (but not all small
+# things); `grep -rI -e 'command-pattern.*=' -e 'push_arg'` can give a (spammy) idea, plus python imports in try/except.
+
+# FIXME: with_flatpak needs flatpak.pc >=0.8.0, ${LIBGIT_DEPS} and libsoup-2.4.pc >=2.52.0
+# Editorconfig needs old pcre, with vte migrating away, might want it optional or ported to pcre2?
+# An introspection USE flag of a dep is required if any introspection based language plugin wants to use it (grep for gi.repository). Last full check at 3.28.4
+
+# These are needed with either USE=git or USE=flatpak (albeit the latter isn't supported yet)
+LIBGIT_DEPS="
+	dev-libs/libgit2[ssh,threads]
+	>=dev-libs/libgit2-glib-0.25.0[ssh]
+"
+# TODO: Handle llvm slots via llvm.eclass; see plugins/clang/meson.build
+RDEPEND="
+	>=dev-libs/libdazzle-3.28.0[introspection,vala?]
+	>=dev-libs/glib-2.56.0:2
+	>=x11-libs/gtk+-3.22.26:3[introspection]
+	>=x11-libs/gtksourceview-3.24.0:3.0[introspection]
+	>=dev-libs/json-glib-1.2.0
+	>=dev-libs/jsonrpc-glib-3.28.0[vala?]
+	>=x11-libs/pango-1.38.0
+	>=dev-libs/libpeas-1.22.0[python,${PYTHON_USEDEP}]
+	>=dev-libs/template-glib-3.28.0[introspection,vala?]
+	>=x11-libs/vte-0.40.2:2.91[vala?]
+	>=dev-libs/libxml2-2.9.0
+	git? ( ${LIBGIT_DEPS} )
+	dev-libs/libpcre:3
+	webkit? ( >=net-libs/webkit-gtk-2.12.0:4=[introspection] )
+
+	>=dev-libs/gobject-introspection-1.48.0:=
+	>=dev-python/pygobject-3.22.0:3[${PYTHON_USEDEP}]
+	${PYTHON_DEPS}
+	clang? ( sys-devel/clang:= )
+	devhelp? ( >=dev-util/devhelp-3.25.1:= )
+	sysprof? ( >=dev-util/sysprof-3.28.0[gtk] )
+	vala? (
+		dev-lang/vala:=
+		$(vala_depend)
+	)
+" # We use subslot operator dep on vala in addition to $(vala_depend), because we have _runtime_
+#   usage in vapa-pack plugin and need it rebuilt before removing an older vala it was built against
+# TODO: runtime ctags path finding..
+# FIXME: spellcheck plugin temporarily disabled due to requiring enchant-2
+#	>=app-text/gspell-1.2.0
+#	>=app-text/enchant:2
+
+# desktop-file-utils required for tests, but we have it in deptree for xdg update-desktop-database anyway, so be explicit and unconditional
+# appstream-glib needed for appdata.xml gettext translation and validation of it with appstream-util with FEATURES=test
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )
+	dev-libs/appstream-glib
+	dev-util/desktop-file-utils
+	>=sys-devel/gettext-0.19.8
+	virtual/pkgconfig
+"
+
+DOC_CONTENTS='gnome-builder can use various other dependencies on runtime to provide
+extra capabilities beyond these expressed via USE flags. Some of these
+that are currently available with packages include:
+
+* dev-util/uncrustify and dev-python/autopep8 for various Code Beautifier
+  plugin out of the box functionality.
+* dev-util/ctags with exuberant-ctags selected via "eselect ctags" for
+  C, C++, Python, JavaScript, CSS, HTML and Ruby autocompletion, semantic
+  highlighting and symbol resolving support.
+* dev-python/jedi and dev-python/lxml for more accurate Python
+  autocompletion support.
+* dev-util/valgrind for integration with valgrind.
+* dev-util/meson for integration with the Meson build system.
+* dev-util/cargo for integration with the Rust Cargo build system.
+* dev-util/cmake for integration with the CMake build system.
+* net-libs/nodejs[npm] for integration with the NPM package system.
+'
+# FIXME: Package gnome-code-assistance and mention here, or maybe USE flag and default enable because it's rather important
+# eslint for additional diagnostics in JavaScript files (what package has this? At least something via NPM..)
+# jhbuild support
+# rust language server via rls; Go via go-langserver
+# autotools stuff for autotools plugin; gtkmm/autoconf-archive for C++ template
+# gjs/gettext/mono/PHPize stuff, but most of these are probably installed for other reasons anyways, when needed inside IDE
+
+PATCHES=(
+	"${FILESDIR}"/${PV}-python37-fix.patch # async 3.7 keyword usage removal
+	"${FILESDIR}"/${PV}-jedi-0.12-compat.patch # preliminary jedi-0.12 compatibility from 3.29.9x/git
+	"${FILESDIR}"/${PV}-valac.patch # Make valapack honor VALAC env var - https://gitlab.gnome.org/GNOME/gnome-builder/merge_requests/109
+	"${FILESDIR}"/${PV}-fix-docs-option.patch # Fix USE=doc to work without USE=gtk-doc
+	"${FILESDIR}"/${PV}-fix-tests-schemadir.patch # Fix tests GSETTINGS_SCHEMA_DIR handling (or tests fail on fresh install) - https://gitlab.gnome.org/GNOME/gnome-builder/merge_requests/111
+)
+
+llvm_check_deps() {
+	has_version "sys-devel/clang:${LLVM_SLOT}"
+}
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+	use clang && llvm_pkg_setup
+}
+
+src_prepare() {
+	use vala && vala_src_prepare
+	xdg_src_prepare
+}
+
+src_configure() {
+	local emesonargs=(
+		-Denable_tracing=false
+		-Denable_profiling=false # not passing -pg to CFLAGS
+		-Dwith_channel=other
+		-Dwith_editorconfig=true # needs libpcre
+		$(meson_use webkit with_webkit)
+		$(meson_use vala with_vapi)
+		$(meson_use doc with_help)
+		$(meson_use gtk-doc with_docs)
+
+		$(meson_use clang with_clang)
+		$(meson_use devhelp with_devhelp)
+		-Dwith_deviced=false
+		-Dwith_flatpak=false
+		$(meson_use git with_git)
+		$(meson_use webkit with_html_preview)
+		-Dwith_spellcheck=false # TODO: requires enchant-2
+		$(meson_use sysprof with_sysprof)
+		$(meson_use vala with_vala_pack)
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+	if use doc; then
+		rm "${ED}"/usr/share/doc/gnome-builder/en/.buildinfo || die
+		rm "${ED}"/usr/share/doc/gnome-builder/en/objects.inv || die
+		rm -r "${ED}"/usr/share/doc/gnome-builder/en/.doctrees || die
+		# custom docdir in build system, blocked by https://github.com/mesonbuild/meson/issues/825
+		mv "${ED}"/usr/share/doc/gnome-builder/en "${ED}"/usr/share/doc/${PF}/html || die
+		# _sources subdir left in on purpose, as HTML links to the rst files as "View page source". Additionally default docompress exclusion of /html/ already ensures they aren't compressed, thus linkable as-is.
+		rmdir "${ED}"/usr/share/doc/gnome-builder/ || die
+	fi
+	readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_icon_cache_update
+	gnome2_schemas_update
+	readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+	gnome2_icon_cache_update
+	gnome2_schemas_update
+}
+
+src_test() {
+	# FIXME: this should be handled at meson level upstream like epiphany does
+	find "${S}" -name '*.gschema.xml' -exec cp {} "${BUILD_DIR}/data/gsettings" \; || die
+	"${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${BUILD_DIR}/data/gsettings" || die
+
+	virtx meson_src_test
+}

diff --git a/dev-util/gnome-builder/metadata.xml b/dev-util/gnome-builder/metadata.xml
index 78c212429a5..4eb8fba905d 100644
--- a/dev-util/gnome-builder/metadata.xml
+++ b/dev-util/gnome-builder/metadata.xml
@@ -7,6 +7,7 @@
 </maintainer>
 <use>
 	<flag name="clang">Provide integration with <pkg>sys-devel/clang</pkg> for best possible C/C++ autocompletion, semantic highlighting, symbol resolving, and diagnostics support</flag>
+	<flag name="devhelp">Provide API docs browsing and integration via <pkg>dev-util/devhelp</pkg></flag>
 	<flag name="git">Provide support for the Git version control system via <pkg>dev-libs/libgit2-glib</pkg>
 		(such as setup of Git for New Project, direct cloning for Open Project and changed lines indicators in the editor gutter)</flag>
 	<flag name="sysprof">Provide an integrated profiler via <pkg>dev-util/sysprof</pkg></flag>


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/gnome-builder/files/, dev-util/gnome-builder/
@ 2019-03-30 21:56 Mart Raudsepp
  0 siblings, 0 replies; 7+ messages in thread
From: Mart Raudsepp @ 2019-03-30 21:56 UTC (permalink / raw
  To: gentoo-commits

commit:     efbe91409c0c7495d2168895504e35851e5b1757
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 30 21:29:55 2019 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sat Mar 30 21:55:57 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=efbe9140

dev-util/gnome-builder: remove old

Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 dev-util/gnome-builder/Manifest                    |   3 -
 .../files/3.28.4-fix-docs-option.patch             |  42 -----
 .../files/3.28.4-fix-tests-schemadir.patch         |  26 ---
 .../files/3.28.4-jedi-0.12-compat.patch            |  93 -----------
 .../gnome-builder/files/3.28.4-python37-fix.patch  |  57 -------
 dev-util/gnome-builder/files/3.28.4-valac.patch    |  15 --
 dev-util/gnome-builder/gnome-builder-3.28.4.ebuild | 186 ---------------------
 dev-util/gnome-builder/gnome-builder-3.30.2.ebuild | 186 ---------------------
 8 files changed, 608 deletions(-)

diff --git a/dev-util/gnome-builder/Manifest b/dev-util/gnome-builder/Manifest
index a9037663c70..3eab4f83ce2 100644
--- a/dev-util/gnome-builder/Manifest
+++ b/dev-util/gnome-builder/Manifest
@@ -1,5 +1,2 @@
 DIST gnome-builder-3.24.2.tar.xz 4342908 BLAKE2B 5dca80d2e948041bc096fa9a2a5d39322c6fedb0560e3e4f3c60c7b0657c7c62e89387a63f7d050c3df90d8c129485bc5495039802548b22ae268d94c14a37ae SHA512 dec133ad3c5ef96a036598ebbe684667dc44f73d8643e700f1e776cf8eb860b99c1d333f1fed5bc896cb7bdcf607eb51fedb7bb1f5b0cc662e4b2703d74140bf
-DIST gnome-builder-3.28.4.tar.xz 9309060 BLAKE2B a4402452ffaf64cc767edb9cba65b74a88cb77d04ca2ffecd3b01c53382930891c2c03e2528861f4d28ca3643465b6767235e945f44cc37d2d716bcbb3ab25c8 SHA512 ef83b909f295d83478aa7d5deb8b5d8291ddf6134e147e88452cdba8ff449a2415d0381d63d3f82cf28942b1096a704de64540c8cdf5f06c21c8278c93fbbc03
-DIST gnome-builder-3.30.2-patchset.tar.xz 43720 BLAKE2B c444117232c6560e68cad46134327e94b361cf89c4f68f2e68940e8a46d2a42720aa5e881dcb3153a3c75057cfacd8c67287a8bb0740999d4628ab6498db7c32 SHA512 e17a0357d2a3e6c059ef27dbf591ad3acfa6f5d7d58f47ca8ebc6dc6883a1bb1bb87b15f3c564c2babc5857e9de4a7a47934398d0000880f233265d7254087d3
-DIST gnome-builder-3.30.2.tar.xz 9478508 BLAKE2B 546328df141582d0d15317166c27493ac1f0b813680607f05de3429301cf8e4937cfc51bff69db26cd4ef1a8ef02aadd5aaa643c857eeabf9b16606a2a3a5cda SHA512 39087e3a30a807b7374167ba4c5295a9161e3c8d8e409172dcd28c52db48e72cd9303c2d4ff8fd11d4bfc70af6c810e5dc254c4c74b646875206221cff3bad57
 DIST gnome-builder-3.30.3.tar.xz 9486164 BLAKE2B b983fd71b1bab31386ab8f4c3a6ff57b33afd2da5aff5e41e7d1cba388a9b6998a0f799c0843bde95f8ce0456fe46457d0c0c46622d59eeb7729d2e8868898f7 SHA512 468605dbd2bd712a76c333a974bb19ca889dfe8493c2e85101641034f3e2c8eba2c0ee2f98ad01f3466f0f42946f05790763ccfaf786d73da192d64360eec47f

diff --git a/dev-util/gnome-builder/files/3.28.4-fix-docs-option.patch b/dev-util/gnome-builder/files/3.28.4-fix-docs-option.patch
deleted file mode 100644
index ca2323f314a..00000000000
--- a/dev-util/gnome-builder/files/3.28.4-fix-docs-option.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 054ef6d2e47da9f41e7c24908b251d074e11a03b Mon Sep 17 00:00:00 2001
-From: Christian Hergert <chergert@redhat.com>
-Date: Wed, 8 Aug 2018 13:03:50 -0700
-Subject: [PATCH] help: fix get_option() to check for proper value
-
-We want to check for help docs, not sdk docs. Also, if enabled, don't be
-automatic about it. Fail hard so the caller knows there is an issue.
----
- doc/help/meson.build | 18 ++++++++----------
- 1 file changed, 8 insertions(+), 10 deletions(-)
-
-diff --git a/doc/help/meson.build b/doc/help/meson.build
-index 1336e6a26..e684f078c 100644
---- a/doc/help/meson.build
-+++ b/doc/help/meson.build
-@@ -1,15 +1,13 @@
--if get_option('with_docs')
-+if get_option('with_help')
- 
--sphinx = find_program(['sphinx-build-3', 'sphinx-build'], required: false)
-+sphinx = find_program(['sphinx-build-3', 'sphinx-build'], required: true)
- 
--if sphinx.found()
--    custom_target('en user documentation',
--                  command: [sphinx, '-b', 'html', '-c', meson.current_source_dir(), meson.current_source_dir(), '@OUTPUT@'],
--                   output: 'en',
--         build_by_default: true)
-+custom_target('en user documentation',
-+           command: [sphinx, '-b', 'html', '-c', meson.current_source_dir(), meson.current_source_dir(), '@OUTPUT@'],
-+            output: 'en',
-+  build_by_default: true
-+)
- 
--
--    install_subdir(meson.current_build_dir() + '/en', install_dir: pkgdocdir_abs)
--endif
-+install_subdir(meson.current_build_dir() + '/en', install_dir: pkgdocdir_abs)
- 
- endif
--- 
-2.17.0
-

diff --git a/dev-util/gnome-builder/files/3.28.4-fix-tests-schemadir.patch b/dev-util/gnome-builder/files/3.28.4-fix-tests-schemadir.patch
deleted file mode 100644
index 3c427c41584..00000000000
--- a/dev-util/gnome-builder/files/3.28.4-fix-tests-schemadir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From a66b2d99f21bff6986b0dda5b7cc9ee393be934a Mon Sep 17 00:00:00 2001
-From: Mart Raudsepp <leio@gentoo.org>
-Date: Wed, 29 Aug 2018 12:30:14 +0300
-Subject: [PATCH] build: Fix GSETTINGS_SCHEMA_DIR envvar handling in tests
-
-GSETTINGS_SCHEMA_DIR does not support multiple colon-separated paths.
----
- src/tests/meson.build | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/tests/meson.build b/src/tests/meson.build
-index 646f6f875..42c0e6d28 100644
---- a/src/tests/meson.build
-+++ b/src/tests/meson.build
-@@ -16,7 +16,7 @@ ide_test_env = [
-   'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()),
-   'G_DEBUG=gc-friendly',
-   'GSETTINGS_BACKEND=memory',
--  'GSETTINGS_SCHEMA_DIR=@0@/data/gsettings:$(GSETTINGS_SCHEMA_DIR)'.format(meson.build_root()),
-+  'GSETTINGS_SCHEMA_DIR=@0@/data/gsettings'.format(meson.build_root()),
-   'PYTHONDONTWRITEBYTECODE=yes',
-   'MALLOC_CHECK_=2',
- #  'MALLOC_PERTURB_=$((${RANDOM:-256} % 256))',
--- 
-2.17.0
-

diff --git a/dev-util/gnome-builder/files/3.28.4-jedi-0.12-compat.patch b/dev-util/gnome-builder/files/3.28.4-jedi-0.12-compat.patch
deleted file mode 100644
index 4132e2d1bfe..00000000000
--- a/dev-util/gnome-builder/files/3.28.4-jedi-0.12-compat.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-From 799a378b96cad5dc9b1093604e76ed362d22f4cc Mon Sep 17 00:00:00 2001
-From: Christian Hergert <chergert@redhat.com>
-Date: Sun, 27 May 2018 20:19:34 -0700
-Subject: [PATCH] jedi: minimal attempt to get things working again
-
-This tries to get some of our jedi code working with recent API changes
-in the jedi project.
-
-This is just a minimal fix, and I'd expect some others may be needed for
-improved functionality.
-
-Fixes #403
----
- src/plugins/jedi/jedi_plugin.py | 44 ++++++++++++++++++++++-----------
- 1 file changed, 29 insertions(+), 15 deletions(-)
-
-diff --git a/src/plugins/jedi/jedi_plugin.py b/src/plugins/jedi/jedi_plugin.py
-index fd8e15d68..052500da1 100644
---- a/src/plugins/jedi/jedi_plugin.py
-+++ b/src/plugins/jedi/jedi_plugin.py
-@@ -91,8 +91,14 @@ try:
-     import jedi
-     from jedi.evaluate.compiled import CompiledObject
-     from jedi.evaluate.compiled import get_special_object
--    from jedi.evaluate.compiled import _create_from_name
--    from jedi.evaluate.context import Context
-+    try:
-+        # 0.12
-+        from jedi.evaluate.compiled import create_from_name
-+        from jedi.evaluate.base_context import Context
-+    except ImportError:
-+        # Pre 0.12
-+        from jedi.evaluate.compiled import _create_from_name as create_from_name
-+        from jedi.evaluate.context import Context
-     from jedi.evaluate.docstrings import _evaluate_for_statement_string
-     from jedi.evaluate.imports import Importer
- 
-@@ -175,23 +181,31 @@ try:
-                         pass
-             return module_list
- 
--    original_jedi_get_module = jedi.evaluate.compiled.fake.get_module
--
--    def patched_jedi_get_module(obj):
--        "Work around a weird bug in jedi"
--        try:
--            return original_jedi_get_module(obj)
--        except ImportError as e:
--            if e.msg == "No module named 'gi._gobject._gobject'":
--                return original_jedi_get_module('gi._gobject')
-+    try:
-+        # Pre 0.12 workaround
-+        # TODO: What needs to be fixed here for 0.12?
-+        original_jedi_get_module = jedi.evaluate.compiled.fake.get_module
-+        def patched_jedi_get_module(obj):
-+            "Work around a weird bug in jedi"
-+            try:
-+                return original_jedi_get_module(obj)
-+            except ImportError as e:
-+                if e.msg == "No module named 'gi._gobject._gobject'":
-+                    return original_jedi_get_module('gi._gobject')
-+        jedi.evaluate.compiled.fake.get_module = patched_jedi_get_module
-+    except:
-+        pass
- 
--    jedi.evaluate.compiled.fake.get_module = patched_jedi_get_module
-     jedi.evaluate.compiled.CompiledObject = PatchedJediCompiledObject
--    jedi.evaluate.instance.CompiledBoundMethod = PatchedCompiledBoundMethod
-+    try:
-+        jedi.evaluate.instance.CompiledBoundMethod = PatchedCompiledBoundMethod
-+    except AttributeError:
-+        jedi.evaluate.context.instance.CompiledBoundMethod = PatchedCompiledBoundMethod
-     jedi.evaluate.imports.Importer = PatchedJediImporter
-     HAS_JEDI = True
--except ImportError:
-+except ImportError as ex:
-     print("jedi not found, python auto-completion not possible.")
-+    print(ex)
-     HAS_JEDI = False
- 
- GIR_PATH_LIST = []
-@@ -376,7 +390,7 @@ class JediCompletionProvider(Ide.Object, GtkSource.CompletionProvider, Ide.Compl
-         return False
- 
-     def do_populate(self, context):
--        self.current_word = Ide.CompletionProvider.context_current_word(context)
-+        self.current_word = Ide.CompletionProvider.context_current_word(context) or ''
-         self.current_word_lower = self.current_word.lower()
- 
-         _, iter = context.get_iter()
--- 
-2.17.0
-

diff --git a/dev-util/gnome-builder/files/3.28.4-python37-fix.patch b/dev-util/gnome-builder/files/3.28.4-python37-fix.patch
deleted file mode 100644
index 2fc6ee5be06..00000000000
--- a/dev-util/gnome-builder/files/3.28.4-python37-fix.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From e1d32d76231b1051a2380995f4a7822aa525375a Mon Sep 17 00:00:00 2001
-From: Simon McVittie <smcv@debian.org>
-Date: Wed, 11 Jul 2018 11:57:06 +0100
-Subject: [PATCH] Python: Avoid identifier 'async', which became a keyword in
- 3.7
-
-This is an incompatible change, but so is async becoming an identifier.
-
-Fixes: #565
-Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=903558
-Signed-off-by: Simon McVittie <smcv@debian.org>
----
- src/libide/Ide.py               | 6 +++---
- src/plugins/jedi/jedi_plugin.py | 2 +-
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/src/libide/Ide.py b/src/libide/Ide.py
-index 02bb61937..07d429c7a 100644
---- a/src/libide/Ide.py
-+++ b/src/libide/Ide.py
-@@ -41,9 +41,9 @@ class _Gio_DBusMethodInfo:
-     in_args = None
-     out_signature = None
- 
--def DBusMethod(dbus_interface, in_signature=None, out_signature=None, async=False):
-+def DBusMethod(dbus_interface, in_signature=None, out_signature=None, is_async=False):
-     def decorator(func):
--        func._is_async = async
-+        func._is_async = is_async
- 
-         func._dbus_method = _Gio_DBusMethodInfo()
-         func._dbus_method.interface = dbus_interface
-@@ -54,7 +54,7 @@ def DBusMethod(dbus_interface, in_signature=None, out_signature=None, async=Fals
-         in_signature_list = GLib.Variant.split_signature('('+in_signature+')')
-         arg_names = inspect.getargspec(func).args
-         arg_names.pop(0) # eat "self" argument
--        if async: arg_names.pop(0) # eat "invocation"
-+        if is_async: arg_names.pop(0) # eat "invocation"
-         if len(in_signature) != len(arg_names):
-             raise TypeError('specified signature %s for method %s does not match length of arguments' % (str(in_signature_list), func.func_name))
-         for pair in zip(in_signature_list, arg_names):
-diff --git a/src/plugins/jedi/jedi_plugin.py b/src/plugins/jedi/jedi_plugin.py
-index 84bd11c27..a346a342e 100644
---- a/src/plugins/jedi/jedi_plugin.py
-+++ b/src/plugins/jedi/jedi_plugin.py
-@@ -688,7 +688,7 @@ class JediService(Ide.DBusService):
-         self.queue = {}
-         self.handler_id = 0
- 
--    @Ide.DBusMethod('org.gnome.builder.plugins.jedi', in_signature='siis', out_signature='a(issass)', async=True)
-+    @Ide.DBusMethod('org.gnome.builder.plugins.jedi', in_signature='siis', out_signature='a(issass)', is_async=True)
-     def CodeComplete(self, invocation, filename, line, column, content):
-         if filename in self.queue:
-             request = self.queue.pop(filename)
--- 
-2.17.0
-

diff --git a/dev-util/gnome-builder/files/3.28.4-valac.patch b/dev-util/gnome-builder/files/3.28.4-valac.patch
deleted file mode 100644
index acb1c54f851..00000000000
--- a/dev-util/gnome-builder/files/3.28.4-valac.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/src/plugins/vala-pack/meson.build b/src/plugins/vala-pack/meson.build
-index dd36d351d..a8c53c6e5 100644
---- a/src/plugins/vala-pack/meson.build
-+++ b/src/plugins/vala-pack/meson.build
-@@ -6,8 +6,8 @@ endif
- 
- add_languages('vala')
- 
--valac = find_program ('valac')
--libvala_version = run_command(valac, '--api-version').stdout().strip()
-+valac = meson.get_compiler('vala')
-+libvala_version = run_command(valac.cmd_array()[0], '--api-version').stdout().strip()
- libvala = dependency('libvala-@0@'.format(libvala_version))
- 
- vala_pack_sources = [

diff --git a/dev-util/gnome-builder/gnome-builder-3.28.4.ebuild b/dev-util/gnome-builder/gnome-builder-3.28.4.ebuild
deleted file mode 100644
index c963ac48f1f..00000000000
--- a/dev-util/gnome-builder/gnome-builder-3.28.4.ebuild
+++ /dev/null
@@ -1,186 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python3_{4,5,6} )
-VALA_MIN_API_VERSION="0.36"
-DISABLE_AUTOFORMATTING=1
-FORCE_PRINT_ELOG=1
-
-inherit gnome.org gnome2-utils llvm meson python-single-r1 readme.gentoo-r1 vala virtualx xdg
-
-DESCRIPTION="An IDE for writing GNOME-based software"
-HOMEPAGE="https://wiki.gnome.org/Apps/Builder"
-
-# FIXME: Review licenses at some point
-LICENSE="GPL-3+ GPL-2+ LGPL-3+ LGPL-2+ MIT CC-BY-SA-3.0 CC0-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="clang +devhelp doc +git gtk-doc sysprof vala webkit"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# When bumping, pay attention to all the included plugins/*/meson.build (and other) build files and the requirements within.
-# `grep -rI dependency * --include='meson.build'` can give a good initial idea for external deps and their double checking.
-# The listed RDEPEND order shold roughly match that output as well, with toplevel one first.
-# Most plugins have no extra requirements and default to enabled; we need to handle the ones with extra requirements. Many of
-# them have optional runtime dependencies, for which we try to at least notify the user via DOC_CONTENTS (but not all small
-# things); `grep -rI -e 'command-pattern.*=' -e 'push_arg'` can give a (spammy) idea, plus python imports in try/except.
-
-# FIXME: with_flatpak needs flatpak.pc >=0.8.0, ${LIBGIT_DEPS} and libsoup-2.4.pc >=2.52.0
-# Editorconfig needs old pcre, with vte migrating away, might want it optional or ported to pcre2?
-# An introspection USE flag of a dep is required if any introspection based language plugin wants to use it (grep for gi.repository). Last full check at 3.28.4
-
-# These are needed with either USE=git or USE=flatpak (albeit the latter isn't supported yet)
-LIBGIT_DEPS="
-	dev-libs/libgit2[ssh,threads]
-	>=dev-libs/libgit2-glib-0.25.0[ssh]
-"
-# TODO: Handle llvm slots via llvm.eclass; see plugins/clang/meson.build
-RDEPEND="
-	>=dev-libs/libdazzle-3.28.0[introspection,vala?]
-	>=dev-libs/glib-2.56.0:2
-	>=x11-libs/gtk+-3.22.26:3[introspection]
-	>=x11-libs/gtksourceview-3.24.0:3.0[introspection]
-	>=dev-libs/json-glib-1.2.0
-	>=dev-libs/jsonrpc-glib-3.28.0[vala?]
-	>=x11-libs/pango-1.38.0
-	>=dev-libs/libpeas-1.22.0[python,${PYTHON_USEDEP}]
-	>=dev-libs/template-glib-3.28.0[introspection,vala?]
-	>=x11-libs/vte-0.40.2:2.91[vala?]
-	>=dev-libs/libxml2-2.9.0
-	git? ( ${LIBGIT_DEPS} )
-	dev-libs/libpcre:3
-	webkit? ( >=net-libs/webkit-gtk-2.12.0:4=[introspection] )
-
-	>=dev-libs/gobject-introspection-1.48.0:=
-	>=dev-python/pygobject-3.22.0:3[${PYTHON_USEDEP}]
-	${PYTHON_DEPS}
-	clang? ( sys-devel/clang:= )
-	devhelp? ( >=dev-util/devhelp-3.25.1:= )
-	sysprof? ( >=dev-util/sysprof-3.28.0[gtk] )
-	vala? (
-		dev-lang/vala:=
-		$(vala_depend)
-	)
-" # We use subslot operator dep on vala in addition to $(vala_depend), because we have _runtime_
-#   usage in vapa-pack plugin and need it rebuilt before removing an older vala it was built against
-# TODO: runtime ctags path finding..
-# FIXME: spellcheck plugin temporarily disabled due to requiring enchant-2
-#	>=app-text/gspell-1.2.0
-#	>=app-text/enchant:2
-
-# desktop-file-utils required for tests, but we have it in deptree for xdg update-desktop-database anyway, so be explicit and unconditional
-# appstream-glib needed for appdata.xml gettext translation and validation of it with appstream-util with FEATURES=test
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )
-	dev-libs/appstream-glib
-	dev-util/desktop-file-utils
-	dev-util/glib-utils
-	>=sys-devel/gettext-0.19.8
-	virtual/pkgconfig
-"
-
-DOC_CONTENTS='gnome-builder can use various other dependencies on runtime to provide
-extra capabilities beyond these expressed via USE flags. Some of these
-that are currently available with packages include:
-
-* dev-util/uncrustify and dev-python/autopep8 for various Code Beautifier
-  plugin out of the box functionality.
-* dev-util/ctags with exuberant-ctags selected via "eselect ctags" for
-  C, C++, Python, JavaScript, CSS, HTML and Ruby autocompletion, semantic
-  highlighting and symbol resolving support.
-* dev-python/jedi and dev-python/lxml for more accurate Python
-  autocompletion support.
-* dev-util/valgrind for integration with valgrind.
-* dev-util/meson for integration with the Meson build system.
-* dev-util/cargo for integration with the Rust Cargo build system.
-* dev-util/cmake for integration with the CMake build system.
-* net-libs/nodejs[npm] for integration with the NPM package system.
-'
-# FIXME: Package gnome-code-assistance and mention here, or maybe USE flag and default enable because it's rather important
-# eslint for additional diagnostics in JavaScript files (what package has this? At least something via NPM..)
-# jhbuild support
-# rust language server via rls; Go via go-langserver
-# autotools stuff for autotools plugin; gtkmm/autoconf-archive for C++ template
-# gjs/gettext/mono/PHPize stuff, but most of these are probably installed for other reasons anyways, when needed inside IDE
-
-PATCHES=(
-	"${FILESDIR}"/${PV}-python37-fix.patch # async 3.7 keyword usage removal
-	"${FILESDIR}"/${PV}-jedi-0.12-compat.patch # preliminary jedi-0.12 compatibility from 3.29.9x/git
-	"${FILESDIR}"/${PV}-valac.patch # Make valapack honor VALAC env var - https://gitlab.gnome.org/GNOME/gnome-builder/merge_requests/109
-	"${FILESDIR}"/${PV}-fix-docs-option.patch # Fix USE=doc to work without USE=gtk-doc
-	"${FILESDIR}"/${PV}-fix-tests-schemadir.patch # Fix tests GSETTINGS_SCHEMA_DIR handling (or tests fail on fresh install) - https://gitlab.gnome.org/GNOME/gnome-builder/merge_requests/111
-)
-
-llvm_check_deps() {
-	has_version "sys-devel/clang:${LLVM_SLOT}"
-}
-
-pkg_setup() {
-	python-single-r1_pkg_setup
-	use clang && llvm_pkg_setup
-}
-
-src_prepare() {
-	use vala && vala_src_prepare
-	xdg_src_prepare
-}
-
-src_configure() {
-	local emesonargs=(
-		-Denable_tracing=false
-		-Denable_profiling=false # not passing -pg to CFLAGS
-		-Dwith_channel=other
-		-Dwith_editorconfig=true # needs libpcre
-		$(meson_use webkit with_webkit)
-		$(meson_use vala with_vapi)
-		$(meson_use doc with_help)
-		$(meson_use gtk-doc with_docs)
-
-		$(meson_use clang with_clang)
-		$(meson_use devhelp with_devhelp)
-		-Dwith_deviced=false
-		-Dwith_flatpak=false
-		$(meson_use git with_git)
-		$(meson_use webkit with_html_preview)
-		-Dwith_spellcheck=false # TODO: requires enchant-2
-		$(meson_use sysprof with_sysprof)
-		$(meson_use vala with_vala_pack)
-	)
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-	if use doc; then
-		rm "${ED}"/usr/share/doc/gnome-builder/en/.buildinfo || die
-		rm "${ED}"/usr/share/doc/gnome-builder/en/objects.inv || die
-		rm -r "${ED}"/usr/share/doc/gnome-builder/en/.doctrees || die
-		# custom docdir in build system, blocked by https://github.com/mesonbuild/meson/issues/825
-		mv "${ED}"/usr/share/doc/gnome-builder/en "${ED}"/usr/share/doc/${PF}/html || die
-		# _sources subdir left in on purpose, as HTML links to the rst files as "View page source". Additionally default docompress exclusion of /html/ already ensures they aren't compressed, thus linkable as-is.
-		rmdir "${ED}"/usr/share/doc/gnome-builder/ || die
-	fi
-	readme.gentoo_create_doc
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-	gnome2_icon_cache_update
-	gnome2_schemas_update
-	readme.gentoo_print_elog
-}
-
-pkg_postrm() {
-	xdg_pkg_postrm
-	gnome2_icon_cache_update
-	gnome2_schemas_update
-}
-
-src_test() {
-	# FIXME: this should be handled at meson level upstream like epiphany does
-	find "${S}" -name '*.gschema.xml' -exec cp {} "${BUILD_DIR}/data/gsettings" \; || die
-	"${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${BUILD_DIR}/data/gsettings" || die
-
-	virtx meson_src_test
-}

diff --git a/dev-util/gnome-builder/gnome-builder-3.30.2.ebuild b/dev-util/gnome-builder/gnome-builder-3.30.2.ebuild
deleted file mode 100644
index 09aad7b39c4..00000000000
--- a/dev-util/gnome-builder/gnome-builder-3.30.2.ebuild
+++ /dev/null
@@ -1,186 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python3_{4,5,6} )
-VALA_MIN_API_VERSION="0.36"
-DISABLE_AUTOFORMATTING=1
-FORCE_PRINT_ELOG=1
-
-inherit gnome.org gnome2-utils llvm meson python-single-r1 readme.gentoo-r1 vala virtualx xdg
-
-DESCRIPTION="An IDE for writing GNOME-based software"
-HOMEPAGE="https://wiki.gnome.org/Apps/Builder"
-SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
-
-# FIXME: Review licenses at some point
-LICENSE="GPL-3+ GPL-2+ LGPL-3+ LGPL-2+ MIT CC-BY-SA-3.0 CC0-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="clang +devhelp doc +git gtk-doc sysprof test vala webkit"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# When bumping, pay attention to all the included plugins/*/meson.build (and other) build files and the requirements within.
-# `grep -rI dependency * --include='meson.build'` can give a good initial idea for external deps and their double checking.
-# The listed RDEPEND order shold roughly match that output as well, with toplevel one first.
-# Most plugins have no extra requirements and default to enabled; we need to handle the ones with extra requirements. Many of
-# them have optional runtime dependencies, for which we try to at least notify the user via DOC_CONTENTS (but not all small
-# things); `grep -rI -e 'command-pattern.*=' -e 'push_arg'` can give a (spammy) idea, plus python imports in try/except.
-
-# FIXME: with_flatpak needs flatpak.pc >=0.8.0, ostree-1, libsoup-2.4.pc >=2.52.0 and ${LIBGIT_DEPS}
-# Editorconfig needs old pcre, with vte migrating away, might want it optional or ported to pcre2?
-# An introspection USE flag of a dep is required if any introspection based language plugin wants to use it (grep for gi.repository). Last full check at 3.28.4
-
-# These are needed with either USE=git or USE=flatpak (albeit the latter isn't supported yet)
-LIBGIT_DEPS="
-	dev-libs/libgit2[ssh,threads]
-	>=dev-libs/libgit2-glib-0.25.0[ssh]
-"
-# TODO: Handle llvm slots via llvm.eclass; see plugins/clang/meson.build
-RDEPEND="
-	>=dev-libs/libdazzle-3.30.2[introspection,vala?]
-	>=dev-libs/glib-2.58.0:2
-	>=x11-libs/gtk+-3.24.0:3[introspection]
-	>=x11-libs/gtksourceview-4.0.0:4[introspection]
-	>=dev-libs/json-glib-1.2.0
-	>=dev-libs/jsonrpc-glib-3.30.1[vala?]
-	>=x11-libs/pango-1.38.0
-	>=dev-libs/libpeas-1.22.0[python,${PYTHON_USEDEP}]
-	>=dev-libs/template-glib-3.28.0[introspection,vala?]
-	>=x11-libs/vte-0.40.2:2.91[vala?]
-	>=dev-libs/libxml2-2.9.0
-	git? ( ${LIBGIT_DEPS} )
-	dev-libs/libpcre:3
-	webkit? ( >=net-libs/webkit-gtk-2.12.0:4=[introspection] )
-
-	>=dev-libs/gobject-introspection-1.48.0:=
-	>=dev-python/pygobject-3.22.0:3[${PYTHON_USEDEP}]
-	${PYTHON_DEPS}
-	clang? ( sys-devel/clang:= )
-	devhelp? ( >=dev-util/devhelp-3.25.1:= )
-	sysprof? ( >=dev-util/sysprof-3.30.2[gtk] )
-	vala? (
-		dev-lang/vala:=
-		$(vala_depend)
-	)
-" # We use subslot operator dep on vala in addition to $(vala_depend), because we have _runtime_
-#   usage in vala-pack plugin and need it rebuilt before removing an older vala it was built against
-# TODO: runtime ctags path finding..
-# FIXME: spellcheck plugin temporarily disabled due to requiring enchant-2
-#	>=app-text/gspell-1.2.0
-#	>=app-text/enchant:2
-
-# desktop-file-utils required for tests, but we have it in deptree for xdg update-desktop-database anyway, so be explicit and unconditional
-# appstream-glib needed for validation with appstream-util with FEATURES=test
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )
-	test? (
-		dev-libs/appstream-glib
-		sys-apps/dbus )
-	dev-util/desktop-file-utils
-	dev-util/glib-utils
-	>=dev-util/meson-0.47.1
-	>=sys-devel/gettext-0.19.8
-	virtual/pkgconfig
-"
-
-DOC_CONTENTS='gnome-builder can use various other dependencies on runtime to provide
-extra capabilities beyond these expressed via USE flags. Some of these
-that are currently available with packages include:
-
-* dev-util/uncrustify and dev-python/autopep8 for various Code Beautifier
-  plugin out of the box functionality.
-* dev-util/ctags with exuberant-ctags selected via "eselect ctags" for
-  C, C++, Python, JavaScript, CSS, HTML and Ruby autocompletion, semantic
-  highlighting and symbol resolving support.
-* dev-python/jedi and dev-python/lxml for more accurate Python
-  autocompletion support.
-* dev-util/valgrind for integration with valgrind.
-* dev-util/meson for integration with the Meson build system.
-* dev-util/cargo for integration with the Rust Cargo build system.
-* dev-util/cmake for integration with the CMake build system.
-* net-libs/nodejs[npm] for integration with the NPM package system.
-'
-# FIXME: Package gnome-code-assistance and mention here, or maybe USE flag and default enable because it's rather important
-# eslint for additional diagnostics in JavaScript files (what package has this? At least something via NPM..)
-# jhbuild support
-# rust language server via rls; Go via go-langserver
-# autotools stuff for autotools plugin; gtkmm/autoconf-archive for C++ template
-# gjs/gettext/mono/PHPize stuff, but most of these are probably installed for other reasons anyways, when needed inside IDE
-
-PATCHES=(
-	"${WORKDIR}/patches" # gnome-builder-3-30 branch up to 2018-12-16 (commit f9a9dc02dd0a2c)
-)
-
-llvm_check_deps() {
-	has_version "sys-devel/clang:${LLVM_SLOT}"
-}
-
-pkg_setup() {
-	python-single-r1_pkg_setup
-	use clang && llvm_pkg_setup
-}
-
-src_prepare() {
-	use vala && vala_src_prepare
-	xdg_src_prepare
-}
-
-src_configure() {
-	local emesonargs=(
-		-Denable_tracing=false
-		-Denable_profiling=false # not passing -pg to CFLAGS
-		-Dfusermount_wrapper=false # meant for flatpak builds
-		-Dwith_tcmalloc=false
-		-Dwith_channel=other
-		-Dwith_editorconfig=true # needs libpcre
-		$(meson_use webkit with_webkit)
-		$(meson_use vala with_vapi)
-		$(meson_use doc with_help)
-		$(meson_use gtk-doc with_docs)
-
-		-Dnetwork_tests=false
-		$(meson_use clang with_clang)
-		$(meson_use devhelp with_devhelp)
-		-Dwith_deviced=false
-		-Dwith_flatpak=false
-		$(meson_use git with_git)
-		$(meson_use webkit with_html_preview)
-		-Dwith_spellcheck=false # TODO: requires enchant-2
-		$(meson_use sysprof with_sysprof)
-		$(meson_use vala with_vala_pack)
-	)
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-	if use doc; then
-		rm "${ED}"/usr/share/doc/gnome-builder/en/.buildinfo || die
-		rm "${ED}"/usr/share/doc/gnome-builder/en/objects.inv || die
-		rm -r "${ED}"/usr/share/doc/gnome-builder/en/.doctrees || die
-		# custom docdir in build system, blocked by https://github.com/mesonbuild/meson/issues/825
-		mv "${ED}"/usr/share/doc/gnome-builder/en "${ED}"/usr/share/doc/${PF}/html || die
-		# _sources subdir left in on purpose, as HTML links to the rst files as "View page source". Additionally default docompress exclusion of /html/ already ensures they aren't compressed, thus linkable as-is.
-		rmdir "${ED}"/usr/share/doc/gnome-builder/ || die
-	fi
-	readme.gentoo_create_doc
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-	gnome2_icon_cache_update
-	gnome2_schemas_update
-	readme.gentoo_print_elog
-}
-
-pkg_postrm() {
-	xdg_pkg_postrm
-	gnome2_icon_cache_update
-	gnome2_schemas_update
-}
-
-src_test() {
-	# FIXME: can't run meson_src_test together with virtx or dbus-run-session
-	virtx dbus-run-session meson test -C "${BUILD_DIR}"
-}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/gnome-builder/files/, dev-util/gnome-builder/
@ 2019-05-18 19:59 Mart Raudsepp
  0 siblings, 0 replies; 7+ messages in thread
From: Mart Raudsepp @ 2019-05-18 19:59 UTC (permalink / raw
  To: gentoo-commits

commit:     0ea5de0e60c49a82ac524b89f341be1e8fec32ce
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sat May 18 19:54:31 2019 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sat May 18 19:58:59 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ea5de0e

dev-util/gnome-builder: remove old

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 dev-util/gnome-builder/Manifest                    |   1 -
 .../gnome-builder/files/3.24.2-jedi-fixes-1.patch  |  28 ---
 .../gnome-builder/files/3.24.2-jedi-fixes-2.patch  |  25 ---
 .../gnome-builder/files/3.24.2-jedi-fixes-3.patch  | 197 ---------------------
 .../gnome-builder/gnome-builder-3.24.2-r1.ebuild   | 133 --------------
 5 files changed, 384 deletions(-)

diff --git a/dev-util/gnome-builder/Manifest b/dev-util/gnome-builder/Manifest
index 3eab4f83ce2..69e6c6daddc 100644
--- a/dev-util/gnome-builder/Manifest
+++ b/dev-util/gnome-builder/Manifest
@@ -1,2 +1 @@
-DIST gnome-builder-3.24.2.tar.xz 4342908 BLAKE2B 5dca80d2e948041bc096fa9a2a5d39322c6fedb0560e3e4f3c60c7b0657c7c62e89387a63f7d050c3df90d8c129485bc5495039802548b22ae268d94c14a37ae SHA512 dec133ad3c5ef96a036598ebbe684667dc44f73d8643e700f1e776cf8eb860b99c1d333f1fed5bc896cb7bdcf607eb51fedb7bb1f5b0cc662e4b2703d74140bf
 DIST gnome-builder-3.30.3.tar.xz 9486164 BLAKE2B b983fd71b1bab31386ab8f4c3a6ff57b33afd2da5aff5e41e7d1cba388a9b6998a0f799c0843bde95f8ce0456fe46457d0c0c46622d59eeb7729d2e8868898f7 SHA512 468605dbd2bd712a76c333a974bb19ca889dfe8493c2e85101641034f3e2c8eba2c0ee2f98ad01f3466f0f42946f05790763ccfaf786d73da192d64360eec47f

diff --git a/dev-util/gnome-builder/files/3.24.2-jedi-fixes-1.patch b/dev-util/gnome-builder/files/3.24.2-jedi-fixes-1.patch
deleted file mode 100644
index 399811bb0ea..00000000000
--- a/dev-util/gnome-builder/files/3.24.2-jedi-fixes-1.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 294920f6b932992e9da8864ca96ae35fe2402406 Mon Sep 17 00:00:00 2001
-From: Christian Hergert <chergert@redhat.com>
-Date: Fri, 30 Jun 2017 21:19:41 -0700
-Subject: [PATCH] jedi: silence xml parser warning
-
-https://bugzilla.gnome.org/show_bug.cgi?id=784327
----
-
-diff --git a/plugins/jedi/jedi_plugin.py b/plugins/jedi/jedi_plugin.py
-index 7be46f2..d257680 100644
---- a/plugins/jedi/jedi_plugin.py
-+++ b/plugins/jedi/jedi_plugin.py
-@@ -298,7 +298,11 @@ class DocumentationDB(object):
-                         cursor.execute('UPDATE girfiles SET last_modified=? WHERE file=?', (mtime, filename))
-                 parser = lxml.etree.XMLParser(recover=True)
-                 tree = lxml.etree.parse(filename, parser=parser)
--                namespace = tree.find('core:namespace', namespaces=ns)
-+                try:
-+                    namespace = tree.find('core:namespace', namespaces=ns)
-+                except:
-+                    print("Failed to parse", filename)
-+                    continue
-                 library_version = namespace.attrib['version']
-                 for node in namespace.findall('core:class', namespaces=ns):
-                     doc = node.find('core:doc', namespaces=ns)
---
-libgit2 0.26.0
-

diff --git a/dev-util/gnome-builder/files/3.24.2-jedi-fixes-2.patch b/dev-util/gnome-builder/files/3.24.2-jedi-fixes-2.patch
deleted file mode 100644
index de8397a57a0..00000000000
--- a/dev-util/gnome-builder/files/3.24.2-jedi-fixes-2.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 1d7c6fa60faf9e81f2fa0f93898f8e1cc68da6d4 Mon Sep 17 00:00:00 2001
-From: Christian Hergert <chergert@redhat.com>
-Date: Thu, 6 Jul 2017 14:32:52 -0700
-Subject: [PATCH] jedi: ignore non-gir files
-
-The rnc file is now shipped here, so ignore that when going
-through the directory contents.
----
-
-diff --git a/plugins/jedi/jedi_plugin.py b/plugins/jedi/jedi_plugin.py
-index d257680..25ade14 100644
---- a/plugins/jedi/jedi_plugin.py
-+++ b/plugins/jedi/jedi_plugin.py
-@@ -280,6 +280,8 @@ class DocumentationDB(object):
-         # I would use scandir for better performance, but it requires newer Python
-         for gir_path in GIR_PATH_LIST:
-             for gir_file in os.listdir(gir_path):
-+                if not gir_file.endswith('.gir'):
-+                    continue
-                 if gir_file in processed_gir_files:
-                     continue
-                 processed_gir_files[gir_file] = None
---
-libgit2 0.26.0
-

diff --git a/dev-util/gnome-builder/files/3.24.2-jedi-fixes-3.patch b/dev-util/gnome-builder/files/3.24.2-jedi-fixes-3.patch
deleted file mode 100644
index 484341ad115..00000000000
--- a/dev-util/gnome-builder/files/3.24.2-jedi-fixes-3.patch
+++ /dev/null
@@ -1,197 +0,0 @@
-From 8bf74c787af082102958de7498a9b4f4248788cc Mon Sep 17 00:00:00 2001
-From: Elad Alfassa <elad@fedoraproject.org>
-Date: Wed, 9 Aug 2017 17:39:07 +0300
-Subject: [PATCH] jedi: adapt to jedi 0.10.0
-
-https://bugzilla.gnome.org/show_bug.cgi?id=778708
----
-
-diff --git a/plugins/jedi/jedi_plugin.py b/plugins/jedi/jedi_plugin.py
-index 25ade14..8898b69 100644
---- a/plugins/jedi/jedi_plugin.py
-+++ b/plugins/jedi/jedi_plugin.py
-@@ -55,7 +55,6 @@ from gi.repository import GtkSource
- from gi.repository import Ide
- from gi.types import GObjectMeta
- from gi.types import StructMeta
--
- _ = Ide.gettext
- 
- gi_importer = DynamicImporter('gi.repository')
-@@ -91,22 +90,31 @@ _ICONS = {
- try:
-     import jedi
-     from jedi.evaluate.compiled import CompiledObject
-+    from jedi.evaluate.compiled import get_special_object
-     from jedi.evaluate.compiled import _create_from_name
--    from jedi.evaluate.compiled import builtin
-+    from jedi.evaluate.context import Context
-     from jedi.evaluate.docstrings import _evaluate_for_statement_string
-     from jedi.evaluate.imports import Importer
- 
-     class PatchedJediCompiledObject(CompiledObject):
-         "A modified version of Jedi CompiledObject to work with GObject Introspection modules"
-+
-+        def __init__(self, evaluator, obj, parent_context=None, faked_class=None):
-+            # we have to override __init__ to change super(CompiledObject, self)
-+            # to Context, in order to prevent an infinite recursion
-+            Context.__init__(self, evaluator, parent_context)
-+            self.obj = obj
-+            self.tree_node = faked_class
-+
-         def _cls(self):
-             if self.obj.__class__ == IntrospectionModule:
-                 return self
-             else:
--                return super()._cls()
-+                return super()._cls(self)
- 
-         @property
-         def py__call__(self):
--            def actual(evaluator, params):
-+            def actual(params):
-                 # Parse the docstring to find the return type:
-                 ret_type = ''
-                 if '->' in self.obj.__doc__:
-@@ -115,18 +123,21 @@ try:
-                 if ret_type.startswith('iter:'):
-                     ret_type = ret_type[len('iter:'):]  # we don't care if it's an iterator
- 
--                if ret_type in __builtins__:
-+                if hasattr(__builtins__, ret_type):
-                     # The function we're inspecting returns a builtin python type, that's easy
--                    obj = _create_from_name(builtin, builtin, ret_type)
--                    return evaluator.execute(obj, params)
-+                    # (see test/test_evaluate/test_compiled.py in the jedi source code for usage)
-+                    builtins = get_special_object(self.evaluator, 'BUILTINS')
-+                    builtin_obj = builtins.py__getattribute__(ret_type)
-+                    obj = _create_from_name(self.evaluator, builtins, builtin_obj, "")
-+                    return self.evaluator.execute(obj, params)
-                 else:
-                     # The function we're inspecting returns a GObject type
--                    parent = self.parent.obj.__name__
-+                    parent = self.parent_context.obj.__name__
-                     if parent.startswith('gi.repository'):
-                         parent = parent[len('gi.repository.'):]
-                     else:
-                         # a module with overrides, such as Gtk, behaves differently
--                        parent_module = self.parent.obj.__module__
-+                        parent_module = self.parent_context.obj.__module__
-                         if parent_module.startswith('gi.overrides'):
-                             parent_module = parent_module[len('gi.overrides.'):]
-                             parent = '%s.%s' % (parent_module, parent)
-@@ -138,22 +149,28 @@ try:
-                         # A pygobject type in a different module
-                         return_type_parent = ret_type.split('.', 1)[0]
-                         ret_type = 'from gi.repository import %s\n%s' % (return_type_parent, ret_type)
--                    result = _evaluate_for_statement_string(evaluator, ret_type, self.parent)
--                    return result
-+                    result = _evaluate_for_statement_string(self.parent_context, ret_type)
-+                    return set(result)
-             if type(self.obj) == FunctionInfo:
-                 return actual
-             return super().py__call__
- 
-+    # we need to override CompiledBoundMethod without changing it much,
-+    # just so it'll not get confused due to our overriden CompiledObject
-+    class PatchedCompiledBoundMethod(PatchedJediCompiledObject):
-+        def __init__(self, func):
-+            super().__init__(func.evaluator, func.obj, func.parent_context, func.tree_node)
-+
-     class PatchedJediImporter(Importer):
-         "A modified version of Jedi Importer to work with GObject Introspection modules"
-         def follow(self):
-             module_list = super().follow()
--            if module_list == []:
-+            if not module_list:
-                 import_path = '.'.join([str(i) for i in self.import_path])
-                 if import_path.startswith('gi.repository'):
-                     try:
-                         module = gi_importer.load_module(import_path)
--                        module_list = [PatchedJediCompiledObject(module)]
-+                        module_list = [PatchedJediCompiledObject(self._evaluator, module)]
-                     except ImportError:
-                         pass
-             return module_list
-@@ -169,9 +186,9 @@ try:
-                 return original_jedi_get_module('gi._gobject')
- 
-     jedi.evaluate.compiled.fake.get_module = patched_jedi_get_module
--
--    jedi.evaluate.imports.Importer = PatchedJediImporter
-     jedi.evaluate.compiled.CompiledObject = PatchedJediCompiledObject
-+    jedi.evaluate.instance.CompiledBoundMethod = PatchedCompiledBoundMethod
-+    jedi.evaluate.imports.Importer = PatchedJediImporter
-     HAS_JEDI = True
- except ImportError:
-     print("jedi not found, python auto-completion not possible.")
-@@ -331,7 +348,6 @@ def update_doc_db_on_startup():
- 
- update_doc_db_on_startup()
- 
--
- class JediCompletionProvider(Ide.Object, GtkSource.CompletionProvider, Ide.CompletionProvider):
-     context = None
-     current_word = None
-@@ -600,6 +616,15 @@ class JediCompletionRequest:
-         script = jedi.Script(self.content, self.line + 1, self.column, self.filename)
- 
-         db = DocumentationDB()
-+
-+        def get_gi_obj(info):
-+            """ Get a GObject Introspection object from a jedi Completion, or None if the completion is not GObject Introspection related """
-+            if (type(info._module) == PatchedJediCompiledObject and
-+               info._module.obj.__class__ == IntrospectionModule):
-+                return next(info._name.infer()).obj
-+            else:
-+                return None
-+
-         for info in script.completions():
-             if self.cancelled:
-                 return
-@@ -608,10 +633,9 @@ class JediCompletionRequest:
- 
-             # we have to use custom names here because .type and .params can't
-             # be overridden (they are properties)
--            if type(info._definition) == PatchedJediCompiledObject and \
--               type(info._definition.obj) == FunctionInfo:
-+            obj = get_gi_obj(info)
-+            if type(obj) == FunctionInfo:
-                     info.real_type = 'function'
--                    obj = info._definition.obj
-                     params = [arg_info.get_name() for arg_info in obj.get_arguments()]
-             else:
-                 info.real_type = info.type
-@@ -626,8 +650,8 @@ class JediCompletionRequest:
-                             params.append(param.name)
- 
-             doc = info.docstring()
--            if hasattr(info._definition, 'obj'):
--                obj = info._definition.obj
-+            if obj is not None:
-+                # get documentation for this GObject Introspection object
-                 symbol = None
-                 namespace = None
- 
-@@ -640,17 +664,7 @@ class JediCompletionRequest:
-                     namespace = obj.get_namespace()
- 
-                 if symbol is not None:
--                    # we need to walk down the path to find the module so we can get the version
--                    parent = info._definition.parent
--                    found = False
--                    while not found:
--                        new_parent = parent.parent
--                        if new_parent is None:
--                            found = True
--                        else:
--                            parent = new_parent
--                    version = parent.obj._version
--                    result = db.query(symbol, version)
-+                    result = db.query(symbol, info._module.obj._version)
-                     if result is not None:
-                         doc = result
- 
---
-libgit2 0.26.0
-

diff --git a/dev-util/gnome-builder/gnome-builder-3.24.2-r1.ebuild b/dev-util/gnome-builder/gnome-builder-3.24.2-r1.ebuild
deleted file mode 100644
index 47b71cd77ac..00000000000
--- a/dev-util/gnome-builder/gnome-builder-3.24.2-r1.ebuild
+++ /dev/null
@@ -1,133 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python3_{5,6} )
-VALA_MIN_API_VERSION="0.30"
-VALA_USE_DEPEND="vapigen"
-DISABLE_AUTOFORMATTING=1
-FORCE_PRINT_ELOG=1
-
-inherit gnome2 python-single-r1 vala virtualx readme.gentoo-r1
-
-DESCRIPTION="Builder attempts to be an IDE for writing software for GNOME"
-HOMEPAGE="https://wiki.gnome.org/Apps/Builder"
-
-# FIXME: Review licenses at some point
-LICENSE="GPL-3+ GPL-2+ LGPL-3+ LGPL-2+ MIT CC-BY-SA-3.0 CC0-1.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="clang +git sysprof vala webkit"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# When bumping, pay attention to all the included plugins/*/configure.ac files and the requirements within.
-# Most have no extra requirements and default to enabled; we need to handle the ones with extra requirements, which tend to default to auto(magic).
-# Look at the last (fourth) argument given to AC_ARG_ENABLE to decide. We don't support any disabling of those that are default-enabled and have no extra deps beyond C/python/introspection.
-# FIXME: >=dev-util/devhelp-3.20.0 dependency is automagic for devhelp integration plugin
-# FIXME: vte could be optional via $(use_enable vte terminal-plugin) - but most/all people want this and have vte?
-# FIXME: flatpak-plugin needs flatpak.pc >=0.6.9, libgit2[threads] >=libgit2-glib-0.24.0[ssh] libsoup-2.4.pc
-# FIXME: --with-sanitizer configure option
-# FIXME: Enable rdtscp based high performance counter usage on suitable architectures for EGG_COUNTER?
-# Editorconfig needs pcre.h, with vte migrating away, might want it optional?
-# Python is always enabled - the core python plugin support checks are automagic and not worth crippling it by not supporting python plugins
-# Relatedly introspection is always required to not have broken python using plugins or have to enable/disable them based on it. This is a full IDE, not a place to be really minimal.
-# An introspection USE flag of a dep is required if any introspection based language plugin wants to use it. Last full check at 3.22.4
-RDEPEND="
-	>=x11-libs/gtk+-3.22.1:3[introspection]
-	>=dev-libs/glib-2.50.0:2[dbus]
-	>=x11-libs/gtksourceview-3.22.0:3.0[introspection]
-	>=dev-libs/gobject-introspection-1.48.0:=
-	>=dev-python/pygobject-3.22.0:3
-	>=dev-libs/libxml2-2.9.0
-	>=x11-libs/pango-1.38.0
-	>=dev-libs/libpeas-1.18.0[python,${PYTHON_USEDEP}]
-	>=dev-libs/json-glib-1.2.0[introspection]
-	>=app-text/gspell-1.2.0
-	>=app-text/enchant-1.6.0
-	webkit? ( >=net-libs/webkit-gtk-2.12.0:4=[introspection] )
-	clang? ( sys-devel/clang:= )
-	git? (
-		dev-libs/libgit2[ssh,threads]
-		>=dev-libs/libgit2-glib-0.25.0[ssh] )
-	>=x11-libs/vte-0.46:2.91
-	sysprof? ( >=dev-util/sysprof-3.23.91[gtk] )
-	dev-libs/libpcre:3
-	${PYTHON_DEPS}
-	vala? ( $(vala_depend) )
-"
-# desktop-file-utils for desktop-file-validate check in configure for 3.22.4
-DEPEND="${RDEPEND}
-	dev-libs/appstream-glib
-	dev-util/desktop-file-utils
-	>=sys-devel/gettext-0.19.8
-	virtual/pkgconfig
-	!<sys-apps/sandbox-2.10-r3
-"
-
-# Tests fail if all plugins aren't enabled (webkit, clang, devhelp, perhaps more)
-RESTRICT="test"
-
-DOC_CONTENTS='gnome-builder can use various other dependencies on runtime to provide
-extra capabilities beyond these expressed via USE flags. Some of these
-that are currently available with packages include:
-
-* dev-util/ctags with exuberant-ctags selected via "eselect ctags" for
-  C, C++, Python, JavaScript, CSS, HTML and Ruby autocompletion, semantic
-  highlighting and symbol resolving support.
-* dev-python/jedi-0.10.x and dev-python/lxml for more accurate Python
-  autocompletion support.
-* dev-util/valgrind for integration with valgrind.
-* dev-util/meson for integration with the Meson build system.
-* dev-util/cargo for integration with the Rust Cargo build system.
-'
-# FIXME: Package gnome-code-assistance and mention here, or maybe USE flag and default enable because it's rather important
-# eslint for additional diagnostics in JavaScript files
-# jhbuild support
-# rust language server via rls
-# autotools stuff for autotools plugin; gtkmm/autoconf-archive for C++ template
-# mono/PHPize stuff
-
-PATCHES=( "${FILESDIR}"/${PV}-jedi-fixes-{1,2,3}.patch ) # jedi-0.10+ compatibility from 3.25.9x; remove 0.10 specific mention from DOC_CONTENTS once compat with 0.11+
-
-pkg_setup() {
-	python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	use vala && vala_src_prepare
-	gnome2_src_prepare
-}
-
-src_configure() {
-	gnome2_src_configure \
-		--with-channel=distro \
-		--enable-editorconfig \
-		--enable-introspection \
-		$(use_enable vala vala-pack-plugin) \
-		$(use_enable webkit) \
-		$(use_enable webkit html-preview-plugin) \
-		$(use_enable clang clang-plugin) \
-		$(use_enable git git-plugin) \
-		$(use_enable sysprof sysprof-plugin) \
-		--disable-flatpak-plugin \
-		--enable-terminal-plugin \
-		--enable-gettext-plugin \
-		--disable-static
-}
-
-src_install() {
-	gnome2_src_install
-	readme.gentoo_create_doc
-}
-
-pkg_postinst() {
-	gnome2_pkg_postinst
-	readme.gentoo_print_elog
-}
-
-src_test() {
-	# FIXME: this should be handled at eclass level
-	"${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/data/gsettings" || die
-
-	GSETTINGS_SCHEMA_DIR="${S}/data/gsettings" virtx emake check
-}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/gnome-builder/files/, dev-util/gnome-builder/
@ 2020-01-26 18:02 Mart Raudsepp
  0 siblings, 0 replies; 7+ messages in thread
From: Mart Raudsepp @ 2020-01-26 18:02 UTC (permalink / raw
  To: gentoo-commits

commit:     3207e8302325904c096a7cba75acfb6e4ea4d350
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 26 16:16:52 2020 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sun Jan 26 18:00:28 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3207e830

dev-util/gnome-builder: bump to 3.32.4

Closes: https://bugs.gentoo.org/702442
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 dev-util/gnome-builder/Manifest                    |   2 +
 .../gnome-builder/files/3.32.4-optional-vala.patch |  29 ++++
 dev-util/gnome-builder/gnome-builder-3.32.4.ebuild | 185 +++++++++++++++++++++
 dev-util/gnome-builder/metadata.xml                |   1 +
 4 files changed, 217 insertions(+)

diff --git a/dev-util/gnome-builder/Manifest b/dev-util/gnome-builder/Manifest
index 69e6c6daddc..808a9df9a29 100644
--- a/dev-util/gnome-builder/Manifest
+++ b/dev-util/gnome-builder/Manifest
@@ -1 +1,3 @@
 DIST gnome-builder-3.30.3.tar.xz 9486164 BLAKE2B b983fd71b1bab31386ab8f4c3a6ff57b33afd2da5aff5e41e7d1cba388a9b6998a0f799c0843bde95f8ce0456fe46457d0c0c46622d59eeb7729d2e8868898f7 SHA512 468605dbd2bd712a76c333a974bb19ca889dfe8493c2e85101641034f3e2c8eba2c0ee2f98ad01f3466f0f42946f05790763ccfaf786d73da192d64360eec47f
+DIST gnome-builder-3.32.4-patchset.tar.xz 34740 BLAKE2B 6e29ce42b2b1878b5fcec7cf057bcdc015da8817d7f9209f4d03e02bb5837525e329d0627d4465123fb20a0a46415053d7e08b445634659123ebff12d2fb9d09 SHA512 494cf1ff370c7d86d42ec352966169e73b99556dc5a1be0bf0ec53cd78e8550897bb44187ae8f471fe3e10a85dc7d44d44c5edef0569b1d0a7dff7b5d78b1fa1
+DIST gnome-builder-3.32.4.tar.xz 11886980 BLAKE2B a7901566238dd39fe180d1e47089d7f99018be115f407d174472a8371374361fe50f2f15cb6d496a1afa3e30117d83788944636fb6a9487d4a719442ba6ae744 SHA512 a050161465edd448b0359ff781bf97b0cda6c184ea4f89193711a1bac3c7b79f76bac0d3600e3823a86aa19538228619b5d64aea94e8a67f480b5c1f79bc3b93

diff --git a/dev-util/gnome-builder/files/3.32.4-optional-vala.patch b/dev-util/gnome-builder/files/3.32.4-optional-vala.patch
new file mode 100644
index 00000000000..b31ee886eae
--- /dev/null
+++ b/dev-util/gnome-builder/files/3.32.4-optional-vala.patch
@@ -0,0 +1,29 @@
+diff --git a/meson_options.txt b/meson_options.txt
+index 36fcfc969..cef10804d 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -13,6 +13,7 @@ option('channel',
+ 
+ option('help', type: 'boolean', value: false)
+ option('docs', type: 'boolean', value: false)
++option('vapi', type: 'boolean')
+ 
+ option('network_tests', type: 'boolean', value: true, description: 'Allow networking in unit-tests')
+ 
+diff --git a/src/meson.build b/src/meson.build
+index bc7f91841..53d678297 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -124,6 +124,7 @@ configure_file(
+            copy: true,
+ )
+ 
++if get_option('vapi')
+ libide_vapi = gnome.generate_vapi('libide-' + libide_api_version,
+         sources: libide_gir[0],
+         install: true,
+@@ -141,3 +142,4 @@ libide_vapi = gnome.generate_vapi('libide-' + libide_api_version,
+ 
+ # Must be after vapi generation
+ subdir('plugins/vala-pack')
++endif

diff --git a/dev-util/gnome-builder/gnome-builder-3.32.4.ebuild b/dev-util/gnome-builder/gnome-builder-3.32.4.ebuild
new file mode 100644
index 00000000000..ea692c5155d
--- /dev/null
+++ b/dev-util/gnome-builder/gnome-builder-3.32.4.ebuild
@@ -0,0 +1,185 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7} )
+VALA_MIN_API_VERSION="0.36"
+DISABLE_AUTOFORMATTING=1
+FORCE_PRINT_ELOG=1
+
+inherit gnome.org gnome2-utils llvm meson python-single-r1 readme.gentoo-r1 vala virtualx xdg
+
+DESCRIPTION="An IDE for writing GNOME-based software"
+HOMEPAGE="https://wiki.gnome.org/Apps/Builder"
+SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
+
+# FIXME: Review licenses at some point
+LICENSE="GPL-3+ GPL-2+ LGPL-3+ LGPL-2+ MIT CC-BY-SA-3.0 CC0-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="clang +devhelp doc +glade gtk-doc sysprof test vala"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# When bumping, pay attention to all the included plugins/*/meson.build (and other) build files and the requirements within.
+# `grep -rI dependency * --include='meson.build'` can give a good initial idea for external deps and their double checking.
+# The listed RDEPEND order shold roughly match that output as well, with toplevel one first then sorted by file path.
+# Most plugins have no extra requirements and default to enabled; we need to handle the ones with extra requirements. Many of
+# them have optional runtime dependencies, for which we try to at least notify the user via DOC_CONTENTS (but not all small
+# things); `grep -rI -e 'command-pattern.*=' -e 'push_arg'` can give a (spammy) idea, plus python imports in try/except.
+
+# FIXME: plugin_flatpak needs flatpak.pc >=0.8.0, ostree-1 and libsoup-2.4.pc >=2.52.0
+# Editorconfig needs old pcre, with vte migrating away, might want it optional or ported to pcre2?
+# An introspection USE flag of a dep is required if any introspection based language plugin wants to use it (grep for gi.repository). Last full check at 3.28.4
+
+# TODO: Handle llvm slots via llvm.eclass; see plugins/clang/meson.build
+RDEPEND="
+	>=dev-libs/libdazzle-3.31.90[introspection,vala?]
+	>=dev-libs/glib-2.59.0:2
+	>=x11-libs/gtk+-3.22.26:3[introspection]
+	>=x11-libs/gtksourceview-4.0.0:4[introspection]
+	>=dev-libs/json-glib-1.2.0
+	>=dev-libs/jsonrpc-glib-3.19.91[vala?]
+	>=x11-libs/pango-1.38.0
+	$(python_gen_cond_dep '>=dev-libs/libpeas-1.22.0[python,${PYTHON_SINGLE_USEDEP}]')
+	>=dev-libs/template-glib-3.28.0[introspection,vala?]
+	>=x11-libs/vte-0.40.2:2.91[introspection,vala?]
+	>=net-libs/webkit-gtk-2.12.0:4=[introspection]
+	>=dev-libs/libxml2-2.9.0
+	dev-libs/libgit2[ssh,threads]
+	>=dev-libs/libgit2-glib-0.28[ssh]
+	dev-libs/libpcre:3
+
+	>=dev-libs/gobject-introspection-1.54.0:=
+	>=dev-python/pygobject-3.22.0:3[${PYTHON_USEDEP}]
+	${PYTHON_DEPS}
+	clang? ( sys-devel/clang:= )
+	devhelp? ( >=dev-util/devhelp-3.25.1:= )
+	glade? ( >=dev-util/glade-3.22.0:3.10 )
+	sysprof? ( >=dev-util/sysprof-3.31.90[gtk] )
+	vala? (
+		dev-lang/vala:=
+		$(vala_depend)
+	)
+" # We use subslot operator dep on vala in addition to $(vala_depend), because we have _runtime_
+#   usage in vala-pack plugin and need it rebuilt before removing an older vala it was built against
+DEPEND="${RDEPEND}"
+# TODO: runtime ctags path finding..
+# FIXME: spellcheck plugin temporarily disabled due to requiring enchant-2
+#	>=app-text/gspell-1.2.0
+#	>=app-text/enchant:2
+
+# desktop-file-utils required for tests, but we have it in deptree for xdg update-desktop-database anyway, so be explicit and unconditional
+# appstream-glib needed for validation with appstream-util with FEATURES=test
+BDEPEND="
+	doc? ( dev-python/sphinx )
+	test? (
+		dev-libs/appstream-glib
+		sys-apps/dbus )
+	dev-util/desktop-file-utils
+	dev-util/glib-utils
+	>=dev-util/meson-0.49.2
+	>=sys-devel/gettext-0.19.8
+	virtual/pkgconfig
+"
+
+DOC_CONTENTS='gnome-builder can use various other dependencies on runtime to provide
+extra capabilities beyond these expressed via USE flags. Some of these
+that are currently available with packages include:
+
+* dev-util/uncrustify and dev-python/autopep8 for various Code Beautifier
+  plugin out of the box functionality.
+* dev-util/ctags with exuberant-ctags selected via "eselect ctags" for
+  C, C++, Python, JavaScript, CSS, HTML and Ruby autocompletion, semantic
+  highlighting and symbol resolving support.
+* dev-python/jedi and dev-python/lxml for more accurate Python
+  autocompletion support.
+* dev-util/valgrind for integration with valgrind.
+* dev-util/meson for integration with the Meson build system.
+* dev-util/cargo for integration with the Rust Cargo build system.
+* dev-util/cmake for integration with the CMake build system.
+* net-libs/nodejs[npm] for integration with the NPM package system.
+'
+# FIXME: Package gnome-code-assistance and mention here, or maybe USE flag and default enable because it's rather important
+# eslint for additional diagnostics in JavaScript files (what package has this? At least something via NPM..)
+# jhbuild support
+# rust language server via rls; Go via go-langserver
+# autotools stuff for autotools plugin; gtkmm/autoconf-archive for C++ template
+# gjs/gettext/mono/PHPize stuff, but most of these are probably installed for other reasons anyways, when needed inside IDE
+
+PATCHES=(
+	"${WORKDIR}/patches" # gnome-builder-3-32 branch 2020-01-14 (commit 325cfb6d9e4) + cherry-picked meson link_whole fixes
+	"${FILESDIR}"/${PV}-optional-vala.patch
+)
+
+llvm_check_deps() {
+	has_version "sys-devel/clang:${LLVM_SLOT}"
+}
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+	use clang && llvm_pkg_setup
+}
+
+src_prepare() {
+	use vala && vala_src_prepare
+	xdg_src_prepare
+}
+
+src_configure() {
+	local emesonargs=(
+		-Dtracing=false
+		-Dprofiling=false # not passing -pg to CFLAGS
+		-Dfusermount_wrapper=false # meant for flatpak builds
+		-Dtcmalloc=false
+		-Dchannel=other
+
+		$(meson_use vala vapi) # TODO: doesn't work anymore; crude patch included
+		$(meson_use doc help)
+		$(meson_use gtk-doc docs)
+
+		-Dnetwork_tests=false
+		$(meson_use clang plugin_clang)
+		$(meson_use devhelp plugin_devhelp)
+		-Dplugin_deviced=false
+		-Dplugin_editorconfig=true # needs libpcre
+		-Dplugin_flatpak=false
+		-Dplugin_podman=false
+		$(meson_use glade plugin_glade)
+		-Dplugin_git=true
+		-Dplugin_spellcheck=false # TODO: requires enchant-2
+		$(meson_use sysprof plugin_sysprof)
+		$(meson_use vala plugin_vala)
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+	python_optimize
+	if use doc; then
+		rm "${ED}"/usr/share/doc/gnome-builder/en/.buildinfo || die
+		rm "${ED}"/usr/share/doc/gnome-builder/en/objects.inv || die
+		rm -r "${ED}"/usr/share/doc/gnome-builder/en/.doctrees || die
+		# custom docdir in build system, blocked by https://github.com/mesonbuild/meson/issues/825
+		mv "${ED}"/usr/share/doc/gnome-builder/en "${ED}"/usr/share/doc/${PF}/html || die
+		# _sources subdir left in on purpose, as HTML links to the rst files as "View page source". Additionally default docompress exclusion of /html/ already ensures they aren't compressed, thus linkable as-is.
+		rmdir "${ED}"/usr/share/doc/gnome-builder/ || die
+	fi
+	readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+	readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+	gnome2_schemas_update
+}
+
+src_test() {
+	# FIXME: can't run meson_src_test together with virtx or dbus-run-session
+	virtx dbus-run-session meson test -C "${BUILD_DIR}"
+}

diff --git a/dev-util/gnome-builder/metadata.xml b/dev-util/gnome-builder/metadata.xml
index 4eb8fba905d..efeddd2652d 100644
--- a/dev-util/gnome-builder/metadata.xml
+++ b/dev-util/gnome-builder/metadata.xml
@@ -10,6 +10,7 @@
 	<flag name="devhelp">Provide API docs browsing and integration via <pkg>dev-util/devhelp</pkg></flag>
 	<flag name="git">Provide support for the Git version control system via <pkg>dev-libs/libgit2-glib</pkg>
 		(such as setup of Git for New Project, direct cloning for Open Project and changed lines indicators in the editor gutter)</flag>
+	<flag name="glade">Provide integration with <pkg>dev-util/glade</pkg> UI designer for Gtk</flag>
 	<flag name="sysprof">Provide an integrated profiler via <pkg>dev-util/sysprof</pkg></flag>
 	<flag name="vala">Provide an autoindenter, autocompletion, diagnostics, and symbol resolver for Vala</flag>
 	<flag name="webkit">Enable <pkg>net-libs/webkit-gtk</pkg> using plugins support and the HTML/Markdown previewer plugin</flag>


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/gnome-builder/files/, dev-util/gnome-builder/
@ 2020-03-12 12:56 Mart Raudsepp
  0 siblings, 0 replies; 7+ messages in thread
From: Mart Raudsepp @ 2020-03-12 12:56 UTC (permalink / raw
  To: gentoo-commits

commit:     a0d708e1c540d2618b1a510ee65f99a1b2284fde
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 12 11:55:35 2020 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Thu Mar 12 12:52:17 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a0d708e1

dev-util/gnome-builder: bump to 3.34.1

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 dev-util/gnome-builder/Manifest                    |   2 +
 .../gnome-builder/files/3.34.1-optional-vala.patch |  42 +++++
 dev-util/gnome-builder/gnome-builder-3.34.1.ebuild | 192 +++++++++++++++++++++
 3 files changed, 236 insertions(+)

diff --git a/dev-util/gnome-builder/Manifest b/dev-util/gnome-builder/Manifest
index 808a9df9a29..ed8ab782cb7 100644
--- a/dev-util/gnome-builder/Manifest
+++ b/dev-util/gnome-builder/Manifest
@@ -1,3 +1,5 @@
 DIST gnome-builder-3.30.3.tar.xz 9486164 BLAKE2B b983fd71b1bab31386ab8f4c3a6ff57b33afd2da5aff5e41e7d1cba388a9b6998a0f799c0843bde95f8ce0456fe46457d0c0c46622d59eeb7729d2e8868898f7 SHA512 468605dbd2bd712a76c333a974bb19ca889dfe8493c2e85101641034f3e2c8eba2c0ee2f98ad01f3466f0f42946f05790763ccfaf786d73da192d64360eec47f
 DIST gnome-builder-3.32.4-patchset.tar.xz 34740 BLAKE2B 6e29ce42b2b1878b5fcec7cf057bcdc015da8817d7f9209f4d03e02bb5837525e329d0627d4465123fb20a0a46415053d7e08b445634659123ebff12d2fb9d09 SHA512 494cf1ff370c7d86d42ec352966169e73b99556dc5a1be0bf0ec53cd78e8550897bb44187ae8f471fe3e10a85dc7d44d44c5edef0569b1d0a7dff7b5d78b1fa1
 DIST gnome-builder-3.32.4.tar.xz 11886980 BLAKE2B a7901566238dd39fe180d1e47089d7f99018be115f407d174472a8371374361fe50f2f15cb6d496a1afa3e30117d83788944636fb6a9487d4a719442ba6ae744 SHA512 a050161465edd448b0359ff781bf97b0cda6c184ea4f89193711a1bac3c7b79f76bac0d3600e3823a86aa19538228619b5d64aea94e8a67f480b5c1f79bc3b93
+DIST gnome-builder-3.34.1-patchset.tar.xz 44680 BLAKE2B 91e91ac8d0fcf6b54d32ce9f1dc209ac22db790a29d724dad20e337fe1962f3d407b59e7f976f1e88277833849c962a470346bb5a308e39b637e6e9ca1dc2c2a SHA512 a114346b093976db227087743a7bbe2ca9523b64a67c95729bfeb7c3c346b3bfb4d02f5e11d36bbbaf506bc7a7f140883bdea7c78407243287bc400dfda43b57
+DIST gnome-builder-3.34.1.tar.xz 11974748 BLAKE2B c34a31c50b327d02632ff18d48ad59f925306901e8874e0c7811b9258c56027403de0d9dc1877c696d96037bdfcdcc27f56f59a41d232e47b330382b1dbf67e9 SHA512 886c732f20563818dcf1deb96d4277fe96a9499b999cfbc7a64286e816e9a36bb978932d36a1e764b54c2d36891b7546fa058f51e036b0fa101c0872f4ce51d8

diff --git a/dev-util/gnome-builder/files/3.34.1-optional-vala.patch b/dev-util/gnome-builder/files/3.34.1-optional-vala.patch
new file mode 100644
index 00000000000..6116de17267
--- /dev/null
+++ b/dev-util/gnome-builder/files/3.34.1-optional-vala.patch
@@ -0,0 +1,42 @@
+From 84249e315c4a95b3ef9421dbf8492e10422e40d9 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Thu, 12 Mar 2020 13:28:38 +0200
+Subject: [PATCH] build: Make vapi generation optional
+
+---
+ meson_options.txt | 1 +
+ src/meson.build   | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/meson_options.txt b/meson_options.txt
+index 8984e9f69..27f9a368b 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -13,6 +13,7 @@ option('channel',
+ 
+ option('help', type: 'boolean', value: false)
+ option('docs', type: 'boolean', value: false)
++option('vapi', type: 'boolean')
+ 
+ option('network_tests', type: 'boolean', value: true, description: 'Allow networking in unit-tests')
+ 
+diff --git a/src/meson.build b/src/meson.build
+index 113a142ad..b0510270b 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -134,6 +134,7 @@ libide_gir = gnome.generate_gir(gnome_builder,
+            extra_args: gnome_builder_gir_extra_args,
+ )
+ 
++if get_option('vapi')
+ configure_file(
+           input: 'libide.deps',
+          output: 'libide-' + libide_api_version + '.deps',
+@@ -165,3 +166,4 @@ libide_vapi = gnome.generate_vapi('libide-' + libide_api_version,
+ 
+ # Must be after vapi generation
+ subdir('plugins/vala-pack')
++endif
+-- 
+2.20.1
+

diff --git a/dev-util/gnome-builder/gnome-builder-3.34.1.ebuild b/dev-util/gnome-builder/gnome-builder-3.34.1.ebuild
new file mode 100644
index 00000000000..694f1dc3272
--- /dev/null
+++ b/dev-util/gnome-builder/gnome-builder-3.34.1.ebuild
@@ -0,0 +1,192 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8} )
+VALA_MIN_API_VERSION="0.36"
+DISABLE_AUTOFORMATTING=1
+FORCE_PRINT_ELOG=1
+
+inherit gnome.org gnome2-utils llvm meson python-single-r1 readme.gentoo-r1 vala virtualx xdg
+
+DESCRIPTION="An IDE for writing GNOME-based software"
+HOMEPAGE="https://wiki.gnome.org/Apps/Builder"
+SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
+
+# FIXME: Review licenses at some point
+LICENSE="GPL-3+ GPL-2+ LGPL-3+ LGPL-2+ MIT CC-BY-SA-3.0 CC0-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="clang +devhelp doc +git +glade gtk-doc spell sysprof test vala"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# When bumping, pay attention to all the included plugins/*/meson.build (and other) build files and the requirements within.
+# `grep -rI dependency * --include='meson.build'` can give a good initial idea for external deps and their double checking.
+# The listed RDEPEND order shold roughly match that output as well, with toplevel one first then sorted by file path.
+# Most plugins have no extra requirements and default to enabled; we need to handle the ones with extra requirements. Many of
+# them have optional runtime dependencies, for which we try to at least notify the user via DOC_CONTENTS (but not all small
+# things); `grep -rI -e 'command-pattern.*=' -e 'push_arg'` can give a (spammy) idea, plus python imports in try/except.
+
+# FIXME: plugin_flatpak needs flatpak.pc >=0.8.0, ostree-1, libsoup-2.4.pc >=2.52.0 and git plugin enabled
+# Editorconfig needs old pcre, with vte migrating away, might want it optional or ported to pcre2?
+# An introspection USE flag of a dep is required if any introspection based language plugin wants to use it (grep for gi.repository). Last full check at 3.28.4
+
+# TODO: Handle llvm slots via llvm.eclass; see plugins/clang/meson.build
+RDEPEND="
+	>=dev-libs/libdazzle-3.33.90[introspection,vala?]
+	>=dev-libs/glib-2.61.2:2
+	>=x11-libs/gtk+-3.22.26:3[introspection]
+	>=x11-libs/gtksourceview-4.0.0:4[introspection]
+	>=dev-libs/json-glib-1.2.0
+	>=dev-libs/jsonrpc-glib-3.19.91[vala?]
+	>=x11-libs/pango-1.38.0
+	>=dev-libs/libpeas-1.22.0[python,${PYTHON_SINGLE_USEDEP}]
+	>=dev-libs/template-glib-3.28.0[introspection,vala?]
+	>=x11-libs/vte-0.40.2:2.91[introspection,vala?]
+	>=net-libs/webkit-gtk-2.12.0:4=[introspection]
+	>=dev-libs/libxml2-2.9.0
+	git? ( dev-libs/libgit2[ssh,threads]
+		>=dev-libs/libgit2-glib-0.28.0.1[ssh]
+	)
+	dev-libs/libpcre:3
+	dev-libs/libpcre2
+
+	>=dev-libs/gobject-introspection-1.54.0:=
+	$(python_gen_cond_dep '
+		>=dev-python/pygobject-3.22.0:3[${PYTHON_MULTI_USEDEP}]
+	')
+	${PYTHON_DEPS}
+	clang? ( sys-devel/clang:= )
+	devhelp? ( >=dev-util/devhelp-3.25.1:= )
+	glade? ( >=dev-util/glade-3.22.0:3.10 )
+	spell? ( >=app-text/gspell-1.8:0=
+		app-text/enchant:2 )
+	>=dev-util/sysprof-capture-3.33.1:3
+	sysprof? ( >=dev-util/sysprof-3.33.4:0/3[gtk] )
+	vala? (
+		dev-lang/vala:=
+		$(vala_depend)
+	)
+" # We use subslot operator dep on vala in addition to $(vala_depend), because we have _runtime_
+#   usage in vala-pack plugin and need it rebuilt before removing an older vala it was built against
+DEPEND="${RDEPEND}"
+# TODO: runtime ctags path finding..
+
+# desktop-file-utils required for tests, but we have it in deptree for xdg update-desktop-database anyway, so be explicit and unconditional
+# appstream-glib needed for validation with appstream-util with FEATURES=test
+BDEPEND="
+	doc? ( dev-python/sphinx )
+	gtk-doc? ( dev-util/gtk-doc
+		app-text/docbook-xml-dtd:4.3 )
+	test? (
+		dev-libs/appstream-glib
+		sys-apps/dbus )
+	dev-util/desktop-file-utils
+	dev-util/glib-utils
+	>=dev-util/meson-0.49.2
+	>=sys-devel/gettext-0.19.8
+	virtual/pkgconfig
+"
+
+DOC_CONTENTS='gnome-builder can use various other dependencies on runtime to provide
+extra capabilities beyond these expressed via USE flags. Some of these
+that are currently available with packages include:
+
+* dev-util/uncrustify and dev-python/autopep8 for various Code Beautifier
+  plugin out of the box functionality.
+* dev-util/ctags with exuberant-ctags selected via "eselect ctags" for
+  C, C++, Python, JavaScript, CSS, HTML and Ruby autocompletion, semantic
+  highlighting and symbol resolving support.
+* dev-python/jedi and dev-python/lxml for more accurate Python
+  autocompletion support.
+* dev-util/valgrind for integration with valgrind.
+* dev-util/meson for integration with the Meson build system.
+* dev-util/cargo for integration with the Rust Cargo build system.
+* dev-util/cmake for integration with the CMake build system.
+* net-libs/nodejs[npm] for integration with the NPM package system.
+'
+# FIXME: Package gnome-code-assistance and mention here, or maybe USE flag and default enable because it's rather important
+# eslint for additional diagnostics in JavaScript files (what package has this? At least something via NPM..)
+# jhbuild support
+# rust language server via rls; Go via go-langserver
+# autotools stuff for autotools plugin; gtkmm/autoconf-archive for C++ template
+# gjs/gettext/mono/PHPize stuff, but most of these are probably installed for other reasons anyways, when needed inside IDE
+
+PATCHES=(
+	"${WORKDIR}/patches" # gnome-builder-3-34 branch 2020-01-22 (commit bf485934b37) + cherry-picked meson link_whole fixes
+	"${FILESDIR}"/${PV}-optional-vala.patch
+)
+
+llvm_check_deps() {
+	has_version "sys-devel/clang:${LLVM_SLOT}"
+}
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+	use clang && llvm_pkg_setup
+}
+
+src_prepare() {
+	use vala && vala_src_prepare
+	xdg_src_prepare
+}
+
+src_configure() {
+	local emesonargs=(
+		-Dtracing=false
+		-Dprofiling=false # not passing -pg to CFLAGS
+		-Dfusermount_wrapper=false # meant for flatpak builds
+		-Dtcmalloc=false
+		-Dchannel=other
+
+		$(meson_use vala vapi) # TODO: doesn't work anymore; crude patch included
+		$(meson_use doc help)
+		$(meson_use gtk-doc docs)
+
+		-Dnetwork_tests=false
+		$(meson_use clang plugin_clang)
+		$(meson_use devhelp plugin_devhelp)
+		-Dplugin_deviced=false
+		-Dplugin_editorconfig=true # needs libpcre
+		$(meson_use git plugin_git)
+		-Dplugin_flatpak=false
+		-Dplugin_podman=false
+		$(meson_use glade plugin_glade)
+		-Dplugin_git=true
+		$(meson_use spell plugin_spellcheck)
+		$(meson_use sysprof plugin_sysprof)
+		$(meson_use vala plugin_vala)
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+	python_optimize
+	if use doc; then
+		rm "${ED}"/usr/share/doc/gnome-builder/en/.buildinfo || die
+		rm "${ED}"/usr/share/doc/gnome-builder/en/objects.inv || die
+		rm -r "${ED}"/usr/share/doc/gnome-builder/en/.doctrees || die
+		# custom docdir in build system, blocked by https://github.com/mesonbuild/meson/issues/825
+		mv "${ED}"/usr/share/doc/gnome-builder/en "${ED}"/usr/share/doc/${PF}/html || die
+		# _sources subdir left in on purpose, as HTML links to the rst files as "View page source". Additionally default docompress exclusion of /html/ already ensures they aren't compressed, thus linkable as-is.
+		rmdir "${ED}"/usr/share/doc/gnome-builder/ || die
+	fi
+	readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+	readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+	gnome2_schemas_update
+}
+
+src_test() {
+	# FIXME: can't run meson_src_test together with virtx or dbus-run-session
+	virtx dbus-run-session meson test -C "${BUILD_DIR}"
+}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/gnome-builder/files/, dev-util/gnome-builder/
@ 2020-04-20 20:30 Mart Raudsepp
  0 siblings, 0 replies; 7+ messages in thread
From: Mart Raudsepp @ 2020-04-20 20:30 UTC (permalink / raw
  To: gentoo-commits

commit:     79041270860de2398e453bdf4349c480f3f96889
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 20 20:24:38 2020 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Mon Apr 20 20:24:38 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79041270

dev-util/gnome-builder: remove old

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 dev-util/gnome-builder/Manifest                    |   2 -
 .../gnome-builder/files/3.32.4-optional-vala.patch |  29 ----
 .../gnome-builder/gnome-builder-3.32.4-r1.ebuild   | 188 ---------------------
 3 files changed, 219 deletions(-)

diff --git a/dev-util/gnome-builder/Manifest b/dev-util/gnome-builder/Manifest
index 9a0f5f0c798..caae4c6bb45 100644
--- a/dev-util/gnome-builder/Manifest
+++ b/dev-util/gnome-builder/Manifest
@@ -1,4 +1,2 @@
-DIST gnome-builder-3.32.4-patchset.tar.xz 34740 BLAKE2B 6e29ce42b2b1878b5fcec7cf057bcdc015da8817d7f9209f4d03e02bb5837525e329d0627d4465123fb20a0a46415053d7e08b445634659123ebff12d2fb9d09 SHA512 494cf1ff370c7d86d42ec352966169e73b99556dc5a1be0bf0ec53cd78e8550897bb44187ae8f471fe3e10a85dc7d44d44c5edef0569b1d0a7dff7b5d78b1fa1
-DIST gnome-builder-3.32.4.tar.xz 11886980 BLAKE2B a7901566238dd39fe180d1e47089d7f99018be115f407d174472a8371374361fe50f2f15cb6d496a1afa3e30117d83788944636fb6a9487d4a719442ba6ae744 SHA512 a050161465edd448b0359ff781bf97b0cda6c184ea4f89193711a1bac3c7b79f76bac0d3600e3823a86aa19538228619b5d64aea94e8a67f480b5c1f79bc3b93
 DIST gnome-builder-3.34.1-patchset.tar.xz 44680 BLAKE2B 91e91ac8d0fcf6b54d32ce9f1dc209ac22db790a29d724dad20e337fe1962f3d407b59e7f976f1e88277833849c962a470346bb5a308e39b637e6e9ca1dc2c2a SHA512 a114346b093976db227087743a7bbe2ca9523b64a67c95729bfeb7c3c346b3bfb4d02f5e11d36bbbaf506bc7a7f140883bdea7c78407243287bc400dfda43b57
 DIST gnome-builder-3.34.1.tar.xz 11974748 BLAKE2B c34a31c50b327d02632ff18d48ad59f925306901e8874e0c7811b9258c56027403de0d9dc1877c696d96037bdfcdcc27f56f59a41d232e47b330382b1dbf67e9 SHA512 886c732f20563818dcf1deb96d4277fe96a9499b999cfbc7a64286e816e9a36bb978932d36a1e764b54c2d36891b7546fa058f51e036b0fa101c0872f4ce51d8

diff --git a/dev-util/gnome-builder/files/3.32.4-optional-vala.patch b/dev-util/gnome-builder/files/3.32.4-optional-vala.patch
deleted file mode 100644
index b31ee886eae..00000000000
--- a/dev-util/gnome-builder/files/3.32.4-optional-vala.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff --git a/meson_options.txt b/meson_options.txt
-index 36fcfc969..cef10804d 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -13,6 +13,7 @@ option('channel',
- 
- option('help', type: 'boolean', value: false)
- option('docs', type: 'boolean', value: false)
-+option('vapi', type: 'boolean')
- 
- option('network_tests', type: 'boolean', value: true, description: 'Allow networking in unit-tests')
- 
-diff --git a/src/meson.build b/src/meson.build
-index bc7f91841..53d678297 100644
---- a/src/meson.build
-+++ b/src/meson.build
-@@ -124,6 +124,7 @@ configure_file(
-            copy: true,
- )
- 
-+if get_option('vapi')
- libide_vapi = gnome.generate_vapi('libide-' + libide_api_version,
-         sources: libide_gir[0],
-         install: true,
-@@ -141,3 +142,4 @@ libide_vapi = gnome.generate_vapi('libide-' + libide_api_version,
- 
- # Must be after vapi generation
- subdir('plugins/vala-pack')
-+endif

diff --git a/dev-util/gnome-builder/gnome-builder-3.32.4-r1.ebuild b/dev-util/gnome-builder/gnome-builder-3.32.4-r1.ebuild
deleted file mode 100644
index db3e63ce737..00000000000
--- a/dev-util/gnome-builder/gnome-builder-3.32.4-r1.ebuild
+++ /dev/null
@@ -1,188 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
-VALA_MIN_API_VERSION="0.36"
-DISABLE_AUTOFORMATTING=1
-FORCE_PRINT_ELOG=1
-
-inherit gnome.org gnome2-utils llvm meson python-single-r1 readme.gentoo-r1 vala virtualx xdg
-
-DESCRIPTION="An IDE for writing GNOME-based software"
-HOMEPAGE="https://wiki.gnome.org/Apps/Builder"
-SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
-
-# FIXME: Review licenses at some point
-LICENSE="GPL-3+ GPL-2+ LGPL-3+ LGPL-2+ MIT CC-BY-SA-3.0 CC0-1.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="clang +devhelp doc +glade gtk-doc spell sysprof test vala"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# When bumping, pay attention to all the included plugins/*/meson.build (and other) build files and the requirements within.
-# `grep -rI dependency * --include='meson.build'` can give a good initial idea for external deps and their double checking.
-# The listed RDEPEND order shold roughly match that output as well, with toplevel one first then sorted by file path.
-# Most plugins have no extra requirements and default to enabled; we need to handle the ones with extra requirements. Many of
-# them have optional runtime dependencies, for which we try to at least notify the user via DOC_CONTENTS (but not all small
-# things); `grep -rI -e 'command-pattern.*=' -e 'push_arg'` can give a (spammy) idea, plus python imports in try/except.
-
-# FIXME: plugin_flatpak needs flatpak.pc >=0.8.0, ostree-1 and libsoup-2.4.pc >=2.52.0
-# Editorconfig needs old pcre, with vte migrating away, might want it optional or ported to pcre2?
-# An introspection USE flag of a dep is required if any introspection based language plugin wants to use it (grep for gi.repository). Last full check at 3.28.4
-
-# TODO: Handle llvm slots via llvm.eclass; see plugins/clang/meson.build
-RDEPEND="
-	>=dev-libs/libdazzle-3.31.90[introspection,vala?]
-	>=dev-libs/glib-2.59.0:2
-	>=x11-libs/gtk+-3.22.26:3[introspection]
-	>=x11-libs/gtksourceview-4.0.0:4[introspection]
-	>=dev-libs/json-glib-1.2.0
-	>=dev-libs/jsonrpc-glib-3.19.91[vala?]
-	>=x11-libs/pango-1.38.0
-	>=dev-libs/libpeas-1.22.0[python,${PYTHON_SINGLE_USEDEP}]
-	>=dev-libs/template-glib-3.28.0[introspection,vala?]
-	>=x11-libs/vte-0.40.2:2.91[introspection,vala?]
-	>=net-libs/webkit-gtk-2.12.0:4=[introspection]
-	>=dev-libs/libxml2-2.9.0
-	dev-libs/libgit2[ssh,threads]
-	>=dev-libs/libgit2-glib-0.28[ssh]
-	dev-libs/libpcre:3
-
-	>=dev-libs/gobject-introspection-1.54.0:=
-	$(python_gen_cond_dep '
-		>=dev-python/pygobject-3.22.0:3[${PYTHON_MULTI_USEDEP}]
-	')
-	${PYTHON_DEPS}
-	clang? ( sys-devel/clang:= )
-	devhelp? ( >=dev-util/devhelp-3.25.1:= )
-	glade? ( >=dev-util/glade-3.22.0:3.10 )
-	spell? ( >=app-text/gspell-1.8:0=
-		app-text/enchant:2 )
-	sysprof? ( >=dev-util/sysprof-3.31.90:0/0[gtk] )
-	vala? (
-		dev-lang/vala:=
-		$(vala_depend)
-	)
-" # We use subslot operator dep on vala in addition to $(vala_depend), because we have _runtime_
-#   usage in vala-pack plugin and need it rebuilt before removing an older vala it was built against
-DEPEND="${RDEPEND}"
-# TODO: runtime ctags path finding..
-
-# desktop-file-utils required for tests, but we have it in deptree for xdg update-desktop-database anyway, so be explicit and unconditional
-# appstream-glib needed for validation with appstream-util with FEATURES=test
-BDEPEND="
-	doc? ( dev-python/sphinx )
-	gtk-doc? ( dev-util/gtk-doc
-		app-text/docbook-xml-dtd:4.3 )
-	test? (
-		dev-libs/appstream-glib
-		sys-apps/dbus )
-	dev-util/desktop-file-utils
-	dev-util/glib-utils
-	>=dev-util/meson-0.49.2
-	>=sys-devel/gettext-0.19.8
-	virtual/pkgconfig
-"
-
-DOC_CONTENTS='gnome-builder can use various other dependencies on runtime to provide
-extra capabilities beyond these expressed via USE flags. Some of these
-that are currently available with packages include:
-
-* dev-util/uncrustify and dev-python/autopep8 for various Code Beautifier
-  plugin out of the box functionality.
-* dev-util/ctags with exuberant-ctags selected via "eselect ctags" for
-  C, C++, Python, JavaScript, CSS, HTML and Ruby autocompletion, semantic
-  highlighting and symbol resolving support.
-* dev-python/jedi and dev-python/lxml for more accurate Python
-  autocompletion support.
-* dev-util/valgrind for integration with valgrind.
-* dev-util/meson for integration with the Meson build system.
-* dev-util/cargo for integration with the Rust Cargo build system.
-* dev-util/cmake for integration with the CMake build system.
-* net-libs/nodejs[npm] for integration with the NPM package system.
-'
-# FIXME: Package gnome-code-assistance and mention here, or maybe USE flag and default enable because it's rather important
-# eslint for additional diagnostics in JavaScript files (what package has this? At least something via NPM..)
-# jhbuild support
-# rust language server via rls; Go via go-langserver
-# autotools stuff for autotools plugin; gtkmm/autoconf-archive for C++ template
-# gjs/gettext/mono/PHPize stuff, but most of these are probably installed for other reasons anyways, when needed inside IDE
-
-PATCHES=(
-	"${WORKDIR}/patches" # gnome-builder-3-32 branch 2020-01-14 (commit 325cfb6d9e4) + cherry-picked meson link_whole fixes
-	"${FILESDIR}"/${PV}-optional-vala.patch
-)
-
-llvm_check_deps() {
-	has_version "sys-devel/clang:${LLVM_SLOT}"
-}
-
-pkg_setup() {
-	python-single-r1_pkg_setup
-	use clang && llvm_pkg_setup
-}
-
-src_prepare() {
-	use vala && vala_src_prepare
-	xdg_src_prepare
-}
-
-src_configure() {
-	local emesonargs=(
-		-Dtracing=false
-		-Dprofiling=false # not passing -pg to CFLAGS
-		-Dfusermount_wrapper=false # meant for flatpak builds
-		-Dtcmalloc=false
-		-Dchannel=other
-
-		$(meson_use vala vapi) # TODO: doesn't work anymore; crude patch included
-		$(meson_use doc help)
-		$(meson_use gtk-doc docs)
-
-		-Dnetwork_tests=false
-		$(meson_use clang plugin_clang)
-		$(meson_use devhelp plugin_devhelp)
-		-Dplugin_deviced=false
-		-Dplugin_editorconfig=true # needs libpcre
-		-Dplugin_flatpak=false
-		-Dplugin_podman=false
-		$(meson_use glade plugin_glade)
-		-Dplugin_git=true
-		$(meson_use spell plugin_spellcheck)
-		$(meson_use sysprof plugin_sysprof)
-		$(meson_use vala plugin_vala)
-	)
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-	python_optimize
-	if use doc; then
-		rm "${ED}"/usr/share/doc/gnome-builder/en/.buildinfo || die
-		rm "${ED}"/usr/share/doc/gnome-builder/en/objects.inv || die
-		rm -r "${ED}"/usr/share/doc/gnome-builder/en/.doctrees || die
-		# custom docdir in build system, blocked by https://github.com/mesonbuild/meson/issues/825
-		mv "${ED}"/usr/share/doc/gnome-builder/en "${ED}"/usr/share/doc/${PF}/html || die
-		# _sources subdir left in on purpose, as HTML links to the rst files as "View page source". Additionally default docompress exclusion of /html/ already ensures they aren't compressed, thus linkable as-is.
-		rmdir "${ED}"/usr/share/doc/gnome-builder/ || die
-	fi
-	readme.gentoo_create_doc
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-	gnome2_schemas_update
-	readme.gentoo_print_elog
-}
-
-pkg_postrm() {
-	xdg_pkg_postrm
-	gnome2_schemas_update
-}
-
-src_test() {
-	# FIXME: can't run meson_src_test together with virtx or dbus-run-session
-	virtx dbus-run-session meson test -C "${BUILD_DIR}"
-}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/gnome-builder/files/, dev-util/gnome-builder/
@ 2024-04-15  7:04 Mart Raudsepp
  0 siblings, 0 replies; 7+ messages in thread
From: Mart Raudsepp @ 2024-04-15  7:04 UTC (permalink / raw
  To: gentoo-commits

commit:     89550f1ceb58051c2d518b0e0103300a05ea80b5
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 15 07:02:13 2024 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Mon Apr 15 07:02:13 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=89550f1c

dev-util/gnome-builder: Fix build against gui-libs/gtk-4.12.5

Closes: https://bugs.gentoo.org/923371
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 .../files/44.2-fix-gtk-4.12.5-build.patch          | 26 ++++++++++++++++++++++
 .../gnome-builder/gnome-builder-44.2-r1.ebuild     |  8 ++++++-
 2 files changed, 33 insertions(+), 1 deletion(-)

diff --git a/dev-util/gnome-builder/files/44.2-fix-gtk-4.12.5-build.patch b/dev-util/gnome-builder/files/44.2-fix-gtk-4.12.5-build.patch
new file mode 100644
index 000000000000..eccf90851fb7
--- /dev/null
+++ b/dev-util/gnome-builder/files/44.2-fix-gtk-4.12.5-build.patch
@@ -0,0 +1,26 @@
+From 43a7c586b7291b5cf82febdaa80b4fe4efea8f54 Mon Sep 17 00:00:00 2001
+From: Christian Hergert <chergert@redhat.com>
+Date: Mon, 15 Jan 2024 11:54:38 -0800
+Subject: [PATCH] libide/tweaks: remove autoptr cleanup
+
+This is not needed now with recent GTK changes merged this morning.
+---
+ src/libide/tweaks/ide-tweaks-window.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/src/libide/tweaks/ide-tweaks-window.c b/src/libide/tweaks/ide-tweaks-window.c
+index f2553a396..dcb55bb35 100644
+--- a/src/libide/tweaks/ide-tweaks-window.c
++++ b/src/libide/tweaks/ide-tweaks-window.c
+@@ -32,8 +32,6 @@
+ #include "ide-tweaks-panel-list-private.h"
+ #include "ide-tweaks-window.h"
+ 
+-G_DEFINE_AUTOPTR_CLEANUP_FUNC (GtkStackPage, g_object_unref)
+-
+ struct _IdeTweaksWindow
+ {
+   AdwWindow               parent_instance;
+-- 
+2.43.0
+

diff --git a/dev-util/gnome-builder/gnome-builder-44.2-r1.ebuild b/dev-util/gnome-builder/gnome-builder-44.2-r1.ebuild
index b99f6335b15c..8dd7656ce8b7 100644
--- a/dev-util/gnome-builder/gnome-builder-44.2-r1.ebuild
+++ b/dev-util/gnome-builder/gnome-builder-44.2-r1.ebuild
@@ -31,10 +31,12 @@ REQUIRED_USE="
 # Editorconfig needs old pcre, with vte migrating away, might want it optional or ported to pcre2?
 # An introspection USE flag of a dep is required if any introspection based language plugin wants to use it (grep for gi.repository). Last full check at 3.28.4
 
+# >=gtk-4.12.5 for relying on GtkStackPage autoptr cleanup added in that version
+
 # TODO: Handle llvm slots via llvm.eclass; see plugins/clang/meson.build
 RDEPEND="
 	>=dev-libs/glib-2.75.0:2
-	>=gui-libs/gtk-4.8:4[introspection]
+	>=gui-libs/gtk-4.12.5:4[introspection]
 	>=gui-libs/libadwaita-1.3.0:1
 	>=gui-libs/libpanel-1.1.2:1
 	>=gui-libs/gtksourceview-5.7.2:5[introspection]
@@ -126,6 +128,10 @@ that are currently available with packages include:
 # stylelint for stylesheet (CSS and co) linting
 # gvls for vala language-server integration
 
+PATCHES=(
+	"${FILESDIR}"/${PV}-fix-gtk-4.12.5-build.patch
+)
+
 llvm_check_deps() {
 	has_version "sys-devel/clang:${LLVM_SLOT}"
 }


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-04-15  7:04 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-12 12:56 [gentoo-commits] repo/gentoo:master commit in: dev-util/gnome-builder/files/, dev-util/gnome-builder/ Mart Raudsepp
  -- strict thread matches above, loose matches on Subject: below --
2024-04-15  7:04 Mart Raudsepp
2020-04-20 20:30 Mart Raudsepp
2020-01-26 18:02 Mart Raudsepp
2019-05-18 19:59 Mart Raudsepp
2019-03-30 21:56 Mart Raudsepp
2018-08-29 21:57 Mart Raudsepp

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