summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gentoo.org>2022-04-02 19:16:29 -0700
committerMatt Turner <mattst88@gentoo.org>2022-04-02 21:26:44 -0700
commit7db644f137ae072d45063aec1471731439b841af (patch)
tree37b3374a98e47664e3de04d7e30844aa21fd6e47 /dev-util/anjuta
parentprofiles: Mask app-pda/gtkpod for removal (diff)
downloadgentoo-7db644f137ae072d45063aec1471731439b841af.tar.gz
gentoo-7db644f137ae072d45063aec1471731439b841af.tar.bz2
gentoo-7db644f137ae072d45063aec1471731439b841af.zip
dev-util/anjuta: EAPI 8
- drop stable keywords - Add new vala support - Fix autoconf-2.70 support (bug #817017) Closes: https://bugs.gentoo.org/817017 Signed-off-by: Matt Turner <mattst88@gentoo.org>
Diffstat (limited to 'dev-util/anjuta')
-rw-r--r--dev-util/anjuta/anjuta-3.34.0-r1.ebuild (renamed from dev-util/anjuta/anjuta-3.34.0.ebuild)30
-rw-r--r--dev-util/anjuta/files/3.34.0-Add-new-vala-support.patch132
-rw-r--r--dev-util/anjuta/files/3.34.0-autoconf-2.70.patch15
-rw-r--r--dev-util/anjuta/files/3.34.0-prefer-newer-vala.patch15
4 files changed, 177 insertions, 15 deletions
diff --git a/dev-util/anjuta/anjuta-3.34.0.ebuild b/dev-util/anjuta/anjuta-3.34.0-r1.ebuild
index 865d18e33fbe..43ee21d824b3 100644
--- a/dev-util/anjuta/anjuta-3.34.0.ebuild
+++ b/dev-util/anjuta/anjuta-3.34.0-r1.ebuild
@@ -1,23 +1,22 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-GNOME2_LA_PUNT="yes"
-PYTHON_COMPAT=( python3_{8..9} )
+EAPI=8
+PYTHON_COMPAT=( python3_{8..10} )
# libanjuta-language-vala.so links to a specific slot of libvala; we want to
# avoid automagic behavior.
-VALA_MIN_API_VERSION="0.46" # 3.34.0 upstream release supports up to 0.44, but 0.46 vala LTS support was added without any other adjustments post-release; 0.48 will need patches
+VALA_MIN_API_VERSION="0.56"
VALA_MAX_API_VERSION="${VALA_MIN_API_VERSION}"
-# We inherit autotools explicitly because GNOME2_EAUTORECONF is set only conditionally later, so gnome2.eclass doesn't do it for us
-inherit autotools gnome2 flag-o-matic readme.gentoo-r1 python-single-r1 vala
+GNOME2_EAUTORECONF="yes"
+inherit gnome2 flag-o-matic readme.gentoo-r1 python-single-r1 vala
DESCRIPTION="A versatile IDE for GNOME"
-HOMEPAGE="https://wiki.gnome.org/Apps/Anjuta"
+HOMEPAGE="https://wiki.gnome.org/Apps/Anjuta https://gitlab.gnome.org/GNOME/anjuta/"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="amd64 ~ppc ~sparc x86"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
IUSE="debug devhelp glade +introspection subversion terminal test vala"
RESTRICT="!test? ( test )"
@@ -72,7 +71,6 @@ DEPEND="${COMMON_DEPEND}
sys-devel/flex
>=sys-devel/gettext-0.17
virtual/pkgconfig
- !!dev-libs/gnome-build
test? (
app-text/docbook-xml-dtd:4.1.2
app-text/docbook-xml-dtd:4.5 )
@@ -82,6 +80,12 @@ DEPEND="${COMMON_DEPEND}
"
# yelp-tools, gi-common and gnome-common are required by eautoreconf
+PATCHES=(
+ "${FILESDIR}"/${PV}-Add-new-vala-support.patch
+ "${FILESDIR}"/${PV}-autoconf-2.70.patch
+ "${FILESDIR}"/${PV}-prefer-newer-vala.patch
+)
+
pkg_setup() {
python-single-r1_pkg_setup
}
@@ -95,10 +99,6 @@ will need to:
1. Go to 'Build' -> 'Configure project'
2. Add 'VALAC=/usr/bin/valac-X.XX' (respecting quotes) to
'Configure options'."
-
- # Without removing other vala versions, it ends up picking the oldest vala available, not newest
- sed -i -e "s/\[0.44\], \[0.42\], \[0.40\], \[0.38\], \[0.36\], \[0.34\], \[0.32\], \[0.30\], \[0.28\], \[0.26\], \[0.24\], \[0.22\], \[0.20\], \[0.18\]/[${VALA_MAX_API_VERSION}]/" configure.ac || die
- GNOME2_EAUTORECONF="yes"
fi
# COPYING is used in Anjuta's help/about entry
@@ -111,7 +111,7 @@ will need to:
sed -e '/SUBDIRS =/ s/benchmark//' \
-i plugins/symbol-db/Makefile.{am,in} || die
- use vala && vala_src_prepare
+ use vala && vala_setup
gnome2_src_prepare
}
diff --git a/dev-util/anjuta/files/3.34.0-Add-new-vala-support.patch b/dev-util/anjuta/files/3.34.0-Add-new-vala-support.patch
new file mode 100644
index 000000000000..219a0308121b
--- /dev/null
+++ b/dev-util/anjuta/files/3.34.0-Add-new-vala-support.patch
@@ -0,0 +1,132 @@
+This is a combination of 7 upstream commits:
+
+build: Allow building with vala 0.46 and drop support for 0.30 and earlier
+language-support-vala: Support for vala 0.48 API
+build: Allow building with vala 0.48
+build: Allow building with vala 0.50
+build: Allow building with vala 0.50 and 0.52
+build: Allow building with vala 0.54
+build: Allow building with vala 0.56
+---
+ configure.ac | 4 +--
+ plugins/language-support-vala/plugin.vala | 37 ++++++++++++++++++-----
+ 2 files changed, 31 insertions(+), 10 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 3b4c99504..4fbad5392 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -338,7 +338,7 @@ if test "$user_disabled_vala" = 1; then
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_CHECKING(if libvala is available)
+- m4_foreach([VERSION], [[0.44], [0.42], [0.40], [0.38], [0.36], [0.34], [0.32], [0.30], [0.28], [0.26], [0.24], [0.22], [0.20], [0.18]],
++ m4_foreach_w([VERSION], [0.56 0.54 0.52 0.50 0.48 0.46 0.44 0.42 0.40 0.38 0.36 0.34 0.32],
+ [PKG_CHECK_EXISTS([ libvala-VERSION ],
+ [ valaver="-VERSION" ])
+ ])
+@@ -350,7 +350,7 @@ else
+ else
+ AC_MSG_RESULT(no)
+ enable_vala="no"
+- VALA_REQUIRED=0.18.0
++ VALA_REQUIRED=0.32.0
+ fi
+ AC_SUBST(LIBVALA)
+ fi
+diff --git a/plugins/language-support-vala/plugin.vala b/plugins/language-support-vala/plugin.vala
+index 13d35fec4..d94634c7f 100644
+--- a/plugins/language-support-vala/plugin.vala
++++ b/plugins/language-support-vala/plugin.vala
+@@ -78,7 +78,11 @@ public class ValaPlugin : Plugin, IAnjuta.Preferences {
+
+ void init_context () {
+ context = new Vala.CodeContext();
++#if VALA_0_50
++ context.set_target_profile (Vala.Profile.GOBJECT);
++#else
+ context.profile = Vala.Profile.GOBJECT;
++#endif
+ context.report = report;
+ report.clear_error_indicators ();
+
+@@ -414,11 +418,19 @@ public class ValaPlugin : Plugin, IAnjuta.Preferences {
+ builder.append_printf ("%s sender", widget.get_full_name ());
+
+ foreach (var param in sig.get_parameters ()) {
++#if VALA_0_48
++ builder.append_printf (", %s %s", param.variable_type.type_symbol.get_full_name (), param.name);
++#else
+ builder.append_printf (", %s %s", param.variable_type.data_type.get_full_name (), param.name);
++#endif
+ }
+ } else {
+ foreach (var param in sig.get_parameters ()) {
++#if VALA_0_48
++ builder.append_printf ("%s %s, ", param.variable_type.type_symbol.get_full_name (), param.name);
++#else
+ builder.append_printf ("%s %s, ", param.variable_type.data_type.get_full_name (), param.name);
++#endif
+ }
+
+ builder.append_printf ("%s sender", widget.get_full_name ());
+@@ -563,6 +575,15 @@ public class ValaPlugin : Plugin, IAnjuta.Preferences {
+ }
+ return matching_symbols;
+ }
++
++ inline List<Vala.Symbol> symbol_lookup_inherited_for_type (Vala.DataType data_type, string name, bool prefix_match, bool invocation = false) {
++#if VALA_0_48
++ return symbol_lookup_inherited (data_type.type_symbol, name, prefix_match, invocation);
++#else
++ return symbol_lookup_inherited (data_type.data_type, name, prefix_match, invocation);
++#endif
++ }
++
+ List<Vala.Symbol> symbol_lookup_inherited (Vala.Symbol? sym, string name, bool prefix_match, bool invocation = false) {
+ List<Vala.Symbol> result = null;
+
+@@ -580,32 +601,32 @@ public class ValaPlugin : Plugin, IAnjuta.Preferences {
+ }
+ if (invocation && sym is Vala.Method) {
+ var func = (Vala.Method) sym;
+- result.concat (symbol_lookup_inherited (func.return_type.data_type, name, prefix_match));
++ result.concat (symbol_lookup_inherited_for_type (func.return_type, name, prefix_match));
+ } else if (sym is Vala.Class) {
+ var cl = (Vala.Class) sym;
+ foreach (var base_type in cl.get_base_types ()) {
+- result.concat (symbol_lookup_inherited (base_type.data_type, name, prefix_match));
++ result.concat (symbol_lookup_inherited_for_type (base_type, name, prefix_match));
+ }
+ } else if (sym is Vala.Struct) {
+ var st = (Vala.Struct) sym;
+- result.concat (symbol_lookup_inherited (st.base_type.data_type, name, prefix_match));
++ result.concat (symbol_lookup_inherited_for_type (st.base_type, name, prefix_match));
+ } else if (sym is Vala.Interface) {
+ var iface = (Vala.Interface) sym;
+ foreach (var prerequisite in iface.get_prerequisites ()) {
+- result.concat (symbol_lookup_inherited (prerequisite.data_type, name, prefix_match));
++ result.concat (symbol_lookup_inherited_for_type (prerequisite, name, prefix_match));
+ }
+ } else if (sym is Vala.LocalVariable) {
+ var variable = (Vala.LocalVariable) sym;
+- result.concat (symbol_lookup_inherited (variable.variable_type.data_type, name, prefix_match));
++ result.concat (symbol_lookup_inherited_for_type (variable.variable_type, name, prefix_match));
+ } else if (sym is Vala.Field) {
+ var field = (Vala.Field) sym;
+- result.concat (symbol_lookup_inherited (field.variable_type.data_type, name, prefix_match));
++ result.concat (symbol_lookup_inherited_for_type (field.variable_type, name, prefix_match));
+ } else if (sym is Vala.Property) {
+ var prop = (Vala.Property) sym;
+- result.concat (symbol_lookup_inherited (prop.property_type.data_type, name, prefix_match));
++ result.concat (symbol_lookup_inherited_for_type (prop.property_type, name, prefix_match));
+ } else if (sym is Vala.Parameter) {
+ var fp = (Vala.Parameter) sym;
+- result.concat (symbol_lookup_inherited (fp.variable_type.data_type, name, prefix_match));
++ result.concat (symbol_lookup_inherited_for_type (fp.variable_type, name, prefix_match));
+ }
+
+ return result;
+--
+2.35.1
+
diff --git a/dev-util/anjuta/files/3.34.0-autoconf-2.70.patch b/dev-util/anjuta/files/3.34.0-autoconf-2.70.patch
new file mode 100644
index 000000000000..fdcc9e3158bf
--- /dev/null
+++ b/dev-util/anjuta/files/3.34.0-autoconf-2.70.patch
@@ -0,0 +1,15 @@
+https://gitlab.gnome.org/GNOME/anjuta/-/merge_requests/13
+
+diff --git a/configure.ac b/configure.ac
+index c637f9cf3..4b101c35e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -85,8 +85,6 @@ case "$YACC" in
+ AC_MSG_ERROR(bison is required)
+ ;;
+ esac
+-AC_LANG([C])
+-AC_LANG([C++])
+ AC_PROG_CXX
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],,
+ AC_MSG_ERROR([C++ Compiler required to compile Anjuta]))
diff --git a/dev-util/anjuta/files/3.34.0-prefer-newer-vala.patch b/dev-util/anjuta/files/3.34.0-prefer-newer-vala.patch
new file mode 100644
index 000000000000..6ae0ead0f3d7
--- /dev/null
+++ b/dev-util/anjuta/files/3.34.0-prefer-newer-vala.patch
@@ -0,0 +1,15 @@
+https://gitlab.gnome.org/GNOME/anjuta/-/merge_requests/14
+
+diff --git a/configure.ac b/configure.ac
+index c637f9cf3..b34e103b2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -338,7 +338,7 @@ if test "$user_disabled_vala" = 1; then
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_CHECKING(if libvala is available)
+- m4_foreach_w([VERSION], [0.56 0.54 0.52 0.50 0.48 0.46 0.44 0.42 0.40 0.38 0.36 0.34 0.32],
++ m4_foreach_w([VERSION], [0.32 0.34 0.36 0.38 0.40 0.42 0.44 0.46 0.48 0.50 0.52 0.54 0.56],
+ [PKG_CHECK_EXISTS([ libvala-VERSION ],
+ [ valaver="-VERSION" ])
+ ])