Merge pull request #148372 from bobby285271/vala
Vala updates 2021-12-02
This commit is contained in:
commit
e82ccfb9ee
7 changed files with 40 additions and 300 deletions
|
@ -1,8 +1,9 @@
|
|||
{ lib, stdenv
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, nix-update-script
|
||||
, fetchpatch
|
||||
, vala_0_52
|
||||
, vala
|
||||
, meson
|
||||
, ninja
|
||||
, pkg-config
|
||||
|
@ -30,14 +31,27 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "NRM7GiJA8c5z9AvXpGXtMl4ZaYN2GauEIbjBmoY4pdo=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Adhere to GLib.Object naming conventions for properties
|
||||
# https://github.com/bleakgrey/tootle/pull/339
|
||||
(fetchpatch {
|
||||
url = "https://git.alpinelinux.org/aports/plain/community/tootle/0001-Adhere-to-GLib.Object-naming-conventions-for-propert.patch?id=001bf1ce9695ddb0bbb58b44433d54207c15b0b5";
|
||||
sha256 = "sha256-B62PhMRkU8P3jmnIUq1bYWztLtO2oNcDsXnAYbJGpso=";
|
||||
})
|
||||
# Use reason_phrase instead of get_phrase
|
||||
# https://github.com/bleakgrey/tootle/pull/336
|
||||
(fetchpatch {
|
||||
url = "https://git.alpinelinux.org/aports/plain/community/tootle/0002-Use-reason_phrase-instead-of-get_phrase.patch?id=001bf1ce9695ddb0bbb58b44433d54207c15b0b5";
|
||||
sha256 = "sha256-rm5NFLeAL2ilXpioywgCR9ppoq+MD0MLyVaBmdzVkqU=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
python3
|
||||
# Does not build with vala 0.54
|
||||
# https://github.com/bleakgrey/tootle/issues/337
|
||||
vala_0_52
|
||||
vala
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ fetchurl, lib, stdenv, pkg-config, gnome, glib, gtk3, clutter, dbus, python3, libxml2
|
||||
, libxklavier, libXtst, gtk2, intltool, libxslt, at-spi2-core, autoreconfHook
|
||||
, wrapGAppsHook, libgee, vala_0_40 }:
|
||||
, wrapGAppsHook, libgee, vala }:
|
||||
|
||||
let
|
||||
pname = "caribou";
|
||||
|
@ -21,6 +21,11 @@ in stdenv.mkDerivation rec {
|
|||
url = "https://bugzilla.gnome.org/attachment.cgi?id=364774";
|
||||
sha256 = "15k1455grf6knlrxqbjnk7sals1730b0whj30451scp46wyvykvd";
|
||||
})
|
||||
# Stop patching the generated GIR, fixes build with latest vala
|
||||
(fetchurl {
|
||||
url = "https://gitlab.gnome.org/GNOME/caribou/-/commit/c52ce71c49dc8d6109a58d16cc8d491d7bd1d781.patch";
|
||||
sha256 = "sha256-jbF1Ygp8Q0ENN/5aEpROuK5zkufIfn6cGW8dncl7ET4=";
|
||||
})
|
||||
(fetchurl {
|
||||
name = "fix-build-modern-vala.patch";
|
||||
url = "https://gitlab.gnome.org/GNOME/caribou/-/commit/76fbd11575f918fc898cb0f5defe07f67c11ec38.patch";
|
||||
|
@ -33,7 +38,7 @@ in stdenv.mkDerivation rec {
|
|||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkg-config intltool libxslt libxml2 autoreconfHook wrapGAppsHook vala_0_40 ];
|
||||
nativeBuildInputs = [ pkg-config intltool libxslt libxml2 autoreconfHook wrapGAppsHook vala ];
|
||||
|
||||
buildInputs = [
|
||||
glib gtk3 clutter at-spi2-core dbus pythonEnv python3.pkgs.pygobject3
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
, keybinder3
|
||||
, pkg-config
|
||||
, python3Packages
|
||||
, vala_0_48
|
||||
, vala
|
||||
, wafHook
|
||||
, wrapGAppsHook
|
||||
, xfce
|
||||
|
@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
|
|||
gobject-introspection
|
||||
pkg-config
|
||||
python3Packages.wrapPython
|
||||
vala_0_48
|
||||
vala
|
||||
wafHook
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, pkg-config, fetchFromGitHub, python3, vala_0_46
|
||||
{ lib, stdenv, pkg-config, fetchFromGitHub, python3, vala_0_40
|
||||
, gtk3, libwnck, libxfce4util, xfce4-panel, wafHook, xfce }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -12,7 +12,13 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "sha256-aKrJzf9rwCyXAJsRIXdBzmJBASuXD5I5kZrp+atx4FA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config vala_0_46 wafHook python3 ];
|
||||
# Does not build with vala 0.48 or later
|
||||
# Upstream has no activity for a while
|
||||
# libxfce4panel-2.0.vapi:92.3-92.41: error: overriding method `Xfce.PanelPlugin.remote_event' is incompatible
|
||||
# with base method `bool Xfce.PanelPluginProvider.remote_event (string, GLib.Value, uint)': too few parameters.
|
||||
# public virtual signal bool remote_event (string name, GLib.Value value);
|
||||
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
nativeBuildInputs = [ pkg-config vala_0_40 wafHook python3 ];
|
||||
buildInputs = [ gtk3 libwnck libxfce4util xfce4-panel ];
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -28,18 +28,8 @@ let
|
|||
# 0.40.12: https://github.com/openembedded/openembedded-core/raw/8553c52f174af4c8c433c543f806f5ed5c1ec48c/meta/recipes-devtools/vala/vala/disable-graphviz.patch
|
||||
"0.40" = ./disable-graphviz-0.40.12.patch;
|
||||
|
||||
# NOTE: the openembedded-core project doesn't have a patch for 0.44.1
|
||||
# We've reverted the addition of the "--disable-valadoc" option
|
||||
# and then applied the following patch.
|
||||
# 0.42.4: https://github.com/openembedded/openembedded-core/raw/f2b4f9ec6f44dced7f88df849cca68961419eeb8/meta/recipes-devtools/vala/vala/disable-graphviz.patch
|
||||
"0.44" = ./disable-graphviz-0.44.3.patch;
|
||||
|
||||
"0.46" = ./disable-graphviz-0.46.1.patch;
|
||||
|
||||
"0.48" = ./disable-graphviz-0.46.1.patch;
|
||||
|
||||
"0.50" = ./disable-graphviz-0.46.1.patch;
|
||||
|
||||
"0.52" = ./disable-graphviz-0.46.1.patch;
|
||||
|
||||
"0.54" = ./disable-graphviz-0.46.1.patch;
|
||||
|
@ -113,24 +103,14 @@ in rec {
|
|||
sha256 = "1pxpack8rrmywlf47v440hc6rv3vi8q9c6niwqnwikxvb2pwf3w7";
|
||||
};
|
||||
|
||||
vala_0_46 = generic {
|
||||
version = "0.46.13";
|
||||
sha256 = "0d7l4vh2xra3q75kw3sy2d9bn5p6s3g3r7j37bdn6ir8l3wp2ivs";
|
||||
};
|
||||
|
||||
vala_0_48 = generic {
|
||||
version = "0.48.19";
|
||||
sha256 = "sha256-gLdlijfZhE/NG0Mdr8WATeYWpYGW5PHxGeWyrraLSgE=";
|
||||
};
|
||||
|
||||
vala_0_50 = generic {
|
||||
version = "0.50.10";
|
||||
sha256 = "sha256-vnIf8/AYHqttM+zKzygfZvMI+qHl5VTwj99nFZpFlRU=";
|
||||
version = "0.48.20";
|
||||
sha256 = "sha256-RrHIF/dIUfvMOV/E+eoRlQLPh7kzPMllbhzczAvTN24=";
|
||||
};
|
||||
|
||||
vala_0_52 = generic {
|
||||
version = "0.52.7";
|
||||
sha256 = "sha256-C7WptPbRdUmewKWAJK3ANapRcAgPUzwo2cNY0aMsU2o=";
|
||||
version = "0.52.8";
|
||||
sha256 = "sha256-d3t9HLVnFewyJUXQEw5/9Y2eem0b2WtuKX6eYOgRh5M=";
|
||||
};
|
||||
|
||||
vala_0_54 = generic {
|
||||
|
|
|
@ -1,261 +0,0 @@
|
|||
diff --git a/Makefile.am b/Makefile.am
|
||||
index f70234759..b3d6c3833 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -13,19 +13,9 @@ SUBDIRS = \
|
||||
doc \
|
||||
gobject-introspection \
|
||||
vapigen \
|
||||
- $(NULL)
|
||||
-
|
||||
-if ENABLE_VALADOC
|
||||
-SUBDIRS += \
|
||||
libvaladoc \
|
||||
valadoc \
|
||||
$(NULL)
|
||||
-endif
|
||||
-
|
||||
-DISTCHECK_CONFIGURE_FLAGS = \
|
||||
- --enable-valadoc \
|
||||
- --enable-unversioned \
|
||||
- $(NULL)
|
||||
|
||||
if ENABLE_UNVERSIONED
|
||||
aclocaldir = $(datadir)/aclocal
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 504db13aa..622397747 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -157,10 +157,11 @@ AC_SUBST(GMODULE_CFLAGS)
|
||||
AC_SUBST(GMODULE_LIBS)
|
||||
|
||||
AC_ARG_WITH(cgraph, AS_HELP_STRING([--with-cgraph], [Required flag for cross-compilation to define capability of graphviz]), [], with_cgraph=check)
|
||||
-AC_ARG_ENABLE(valadoc, AS_HELP_STRING([--disable-valadoc], [Disable valadoc]), enable_valadoc=$enableval, enable_valadoc=yes)
|
||||
-if test x$enable_valadoc = xyes; then
|
||||
+AC_ARG_ENABLE(graphviz, AS_HELP_STRING([--disable-graphviz], [Disable graphviz usage for valadoc]), enable_graphviz=$enableval, enable_graphviz=yes)
|
||||
+if test x$enable_graphviz = xyes; then
|
||||
PKG_CHECK_MODULES(LIBGVC, libgvc >= $LIBGVC_REQUIRED)
|
||||
AC_MSG_CHECKING([for CGRAPH])
|
||||
+ VALAFLAGS="$VALAFLAGS -D HAVE_GRAPHVIZ"
|
||||
cgraph_tmp_LIBADD="$LIBADD"
|
||||
cgraph_tmp_CFLAGS="$CFLAGS"
|
||||
LIBADD="$LIBADD $LIBGVC_LIBS"
|
||||
@@ -198,8 +199,8 @@ if test x$enable_valadoc = xyes; then
|
||||
LIBADD="$cgraph_tmp_LIBADD"
|
||||
CFLAGS="$cgraph_tmp_CFLAGS"
|
||||
fi
|
||||
+AM_CONDITIONAL(ENABLE_GRAPHVIZ, test x$enable_graphviz = xyes)
|
||||
AM_CONDITIONAL(HAVE_CGRAPH, test "$have_cgraph" = "yes")
|
||||
-AM_CONDITIONAL(ENABLE_VALADOC, test x$enable_valadoc = xyes)
|
||||
|
||||
AC_PATH_PROG([XSLTPROC], [xsltproc], :)
|
||||
AM_CONDITIONAL(HAVE_XSLTPROC, test "$XSLTPROC" != :)
|
||||
diff --git a/doc/Makefile.am b/doc/Makefile.am
|
||||
index d2684a0e0..b343c7c10 100644
|
||||
--- a/doc/Makefile.am
|
||||
+++ b/doc/Makefile.am
|
||||
@@ -6,16 +6,11 @@ SUBDIRS = \
|
||||
|
||||
dist_man_MANS = \
|
||||
valac.1 \
|
||||
+ valadoc.1 \
|
||||
vala-gen-introspect.1 \
|
||||
vapigen.1 \
|
||||
$(NULL)
|
||||
|
||||
-if ENABLE_VALADOC
|
||||
-dist_man_MANS += \
|
||||
- valadoc.1 \
|
||||
- $(NULL)
|
||||
-endif
|
||||
-
|
||||
EXTRA_DIST = \
|
||||
valac.h2m \
|
||||
valadoc.h2m \
|
||||
@@ -24,11 +19,7 @@ EXTRA_DIST = \
|
||||
$(NULL)
|
||||
|
||||
if HAVE_HELP2MAN
|
||||
-if ENABLE_VALADOC
|
||||
manpages: valac.1 valadoc.1 vala-gen-introspect.1 vapigen.1
|
||||
-else
|
||||
-manpages: valac.1 vala-gen-introspect.1 vapigen.1
|
||||
-endif
|
||||
@rm $^
|
||||
$(MAKE) $(AM_MAKEFLAGS) $^
|
||||
|
||||
@@ -37,13 +28,11 @@ valac.1:
|
||||
--include $(srcdir)/valac.h2m \
|
||||
--libtool --no-info \
|
||||
--output=$@
|
||||
-if ENABLE_VALADOC
|
||||
valadoc.1:
|
||||
$(HELP2MAN) $(top_builddir)/valadoc/valadoc \
|
||||
--include $(srcdir)/valadoc.h2m \
|
||||
--libtool --no-info \
|
||||
--output=$@
|
||||
-endif
|
||||
vala-gen-introspect.1:
|
||||
$(HELP2MAN) $(top_builddir)/gobject-introspection/gen-introspect \
|
||||
--include $(srcdir)/vala-gen-introspect.h2m \
|
||||
@@ -60,15 +49,12 @@ endif
|
||||
if ENABLE_UNVERSIONED
|
||||
install-data-hook:
|
||||
cd $(DESTDIR)$(man1dir) && $(LN_S) -f valac@PACKAGE_SUFFIX@.1 valac.1
|
||||
-if ENABLE_VALADOC
|
||||
cd $(DESTDIR)$(man1dir) && $(LN_S) -f valadoc@PACKAGE_SUFFIX@.1 valadoc.1
|
||||
-endif
|
||||
cd $(DESTDIR)$(man1dir) && $(LN_S) -f vala-gen-introspect@PACKAGE_SUFFIX@.1 vala-gen-introspect.1
|
||||
cd $(DESTDIR)$(man1dir) && $(LN_S) -f vapigen@PACKAGE_SUFFIX@.1 vapigen.1
|
||||
endif
|
||||
|
||||
|
||||
-if ENABLE_VALADOC
|
||||
COMMON_VALADOCFLAGS = \
|
||||
--force \
|
||||
--verbose \
|
||||
@@ -150,7 +136,6 @@ internal-apis/valadoc: $(valadoc_VALASOURCES) internal-apis/codegen
|
||||
@touch $@
|
||||
|
||||
internal-api-docs: internal-apis/gee internal-apis/vala internal-apis/ccode internal-apis/codegen internal-apis/valadoc
|
||||
-endif
|
||||
|
||||
clean-local:
|
||||
rm -rf $(builddir)/internal-apis
|
||||
diff --git a/libvaladoc/Makefile.am b/libvaladoc/Makefile.am
|
||||
index 7456fb836..107338e91 100644
|
||||
--- a/libvaladoc/Makefile.am
|
||||
+++ b/libvaladoc/Makefile.am
|
||||
@@ -119,10 +119,6 @@ libvaladoc_la_VALASOURCES = \
|
||||
content/tablerow.vala \
|
||||
content/taglet.vala \
|
||||
content/text.vala \
|
||||
- charts/chart.vala \
|
||||
- charts/chartfactory.vala \
|
||||
- charts/hierarchychart.vala \
|
||||
- charts/simplechartfactory.vala \
|
||||
parser/manyrule.vala \
|
||||
parser/oneofrule.vala \
|
||||
parser/optionalrule.vala \
|
||||
@@ -149,13 +145,24 @@ libvaladoc_la_VALASOURCES = \
|
||||
highlighter/codetoken.vala \
|
||||
highlighter/highlighter.vala \
|
||||
html/basicdoclet.vala \
|
||||
- html/htmlchartfactory.vala \
|
||||
html/linkhelper.vala \
|
||||
html/cssclassresolver.vala \
|
||||
html/htmlmarkupwriter.vala \
|
||||
html/htmlrenderer.vala \
|
||||
$(NULL)
|
||||
|
||||
+if ENABLE_GRAPHVIZ
|
||||
+libvaladoc_la_VALASOURCES += \
|
||||
+ charts/chart.vala \
|
||||
+ charts/chartfactory.vala \
|
||||
+ charts/hierarchychart.vala \
|
||||
+ charts/simplechartfactory.vala \
|
||||
+ html/htmlchartfactory.vala \
|
||||
+ $(NULL)
|
||||
+
|
||||
+LIBGVC_PKG = --vapidir $(top_srcdir)/vapi --pkg libgvc
|
||||
+endif
|
||||
+
|
||||
libvaladoc@PACKAGE_SUFFIX@_la_SOURCES = \
|
||||
libvaladoc.vala.stamp \
|
||||
$(libvaladoc_la_VALASOURCES:.vala=.c) \
|
||||
@@ -175,11 +182,11 @@ libvaladoc.vala.stamp: $(libvaladoc_la_VALASOURCES)
|
||||
--library valadoc \
|
||||
--vapi valadoc@PACKAGE_SUFFIX@.vapi \
|
||||
--vapidir $(top_srcdir)/vapi --pkg gmodule-2.0 \
|
||||
- --vapidir $(top_srcdir)/vapi --pkg libgvc \
|
||||
--vapidir $(top_srcdir)/gee --pkg gee \
|
||||
--vapidir $(top_srcdir)/vala --pkg vala \
|
||||
--vapidir $(top_srcdir)/ccode --pkg ccode \
|
||||
--vapidir $(top_srcdir)/codegen --pkg codegen \
|
||||
+ $(LIBGVC_PKG) \
|
||||
--pkg config \
|
||||
$(filter %.vala %.c,$^)
|
||||
touch $@
|
||||
@@ -207,6 +214,9 @@ nodist_pkgconfig_DATA = valadoc@PACKAGE_SUFFIX@.pc
|
||||
|
||||
valadoc@PACKAGE_SUFFIX@.pc: valadoc.pc
|
||||
cp $< $@
|
||||
+if !ENABLE_GRAPHVIZ
|
||||
+ sed -i "s/libgvc //g" $@
|
||||
+endif
|
||||
|
||||
vapidir = $(datadir)/vala/vapi
|
||||
dist_vapi_DATA = valadoc@PACKAGE_SUFFIX@.vapi
|
||||
@@ -214,6 +224,9 @@ nodist_vapi_DATA = valadoc@PACKAGE_SUFFIX@.deps
|
||||
|
||||
valadoc@PACKAGE_SUFFIX@.deps: valadoc.deps
|
||||
cp $< $@
|
||||
+if !ENABLE_GRAPHVIZ
|
||||
+ sed -i "s/libgvc//g" $@
|
||||
+endif
|
||||
|
||||
EXTRA_DIST = \
|
||||
$(libvaladoc_la_VALASOURCES) \
|
||||
diff --git a/libvaladoc/html/basicdoclet.vala b/libvaladoc/html/basicdoclet.vala
|
||||
index 46578c28f..f6ce7097c 100644
|
||||
--- a/libvaladoc/html/basicdoclet.vala
|
||||
+++ b/libvaladoc/html/basicdoclet.vala
|
||||
@@ -46,7 +46,11 @@ public abstract class Valadoc.Html.BasicDoclet : Api.Visitor, Doclet {
|
||||
protected HtmlRenderer _renderer;
|
||||
protected Html.MarkupWriter writer;
|
||||
protected Html.CssClassResolver cssresolver;
|
||||
+#if HAVE_GRAPHVIZ
|
||||
protected Charts.Factory image_factory;
|
||||
+#else
|
||||
+ protected void* image_factory;
|
||||
+#endif
|
||||
protected ErrorReporter reporter;
|
||||
protected string package_list_link = "../index.html";
|
||||
|
||||
@@ -120,7 +124,9 @@ public abstract class Valadoc.Html.BasicDoclet : Api.Visitor, Doclet {
|
||||
this.linker = new LinkHelper ();
|
||||
|
||||
_renderer = new HtmlRenderer (settings, this.linker, this.cssresolver);
|
||||
+#if HAVE_GRAPHVIZ
|
||||
this.image_factory = new SimpleChartFactory (settings, linker);
|
||||
+#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -1025,6 +1031,7 @@ public abstract class Valadoc.Html.BasicDoclet : Api.Visitor, Doclet {
|
||||
}
|
||||
|
||||
protected void write_image_block (Api.Node element) {
|
||||
+#if HAVE_GRAPHVIZ
|
||||
if (element is Class || element is Interface || element is Struct) {
|
||||
unowned string format = (settings.use_svg_images ? "svg" : "png");
|
||||
var chart = new Charts.Hierarchy (image_factory, element);
|
||||
@@ -1044,6 +1051,7 @@ public abstract class Valadoc.Html.BasicDoclet : Api.Visitor, Doclet {
|
||||
this.get_img_path_html (element, format)});
|
||||
writer.add_usemap (chart);
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
|
||||
public void write_namespace_content (Namespace node, Api.Node? parent) {
|
||||
diff --git a/libvaladoc/html/htmlmarkupwriter.vala b/libvaladoc/html/htmlmarkupwriter.vala
|
||||
index 5aa4afdea..e79b0b8f5 100644
|
||||
--- a/libvaladoc/html/htmlmarkupwriter.vala
|
||||
+++ b/libvaladoc/html/htmlmarkupwriter.vala
|
||||
@@ -51,12 +51,16 @@ public class Valadoc.Html.MarkupWriter : Valadoc.MarkupWriter {
|
||||
}
|
||||
}
|
||||
|
||||
+#if HAVE_GRAPHVIZ
|
||||
public unowned MarkupWriter add_usemap (Charts.Chart chart) {
|
||||
string? buf = (string?) chart.write_buffer ("cmapx");
|
||||
if (buf != null) {
|
||||
raw_text ("\n");
|
||||
raw_text ((!) buf);
|
||||
}
|
||||
+#else
|
||||
+ public unowned MarkupWriter add_usemap (void* chart) {
|
||||
+#endif
|
||||
|
||||
return this;
|
||||
}
|
|
@ -13081,9 +13081,7 @@ with pkgs;
|
|||
|
||||
inherit (callPackage ../development/compilers/vala { })
|
||||
vala_0_40
|
||||
vala_0_46
|
||||
vala_0_48
|
||||
vala_0_50
|
||||
vala_0_52
|
||||
vala_0_54
|
||||
vala;
|
||||
|
@ -27530,8 +27528,6 @@ with pkgs;
|
|||
pdfgrep = callPackage ../tools/typesetting/pdfgrep { };
|
||||
|
||||
pdfpc = callPackage ../applications/misc/pdfpc {
|
||||
# https://github.com/pdfpc/pdfpc/issues/594
|
||||
vala = vala_0_50;
|
||||
inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-libav;
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue