* [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