glfs/general/prog/vala.xml
Bruce Dubbs f95e57bf93 Update to gtk-doc-1.31.
Update to libgee-0.20.2. 
Update to vala-0.44.7. 
Update to flac-1.3.3. 
Update to exempi-2.5.1. 



git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@21901 af4574ff-66df-0310-9fd7-8a98e5e911e0
2019-08-06 18:16:05 +00:00

266 lines
7.9 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY vala-download-http "&gnome-download-http;/vala/&vala-major-version;/vala-&vala-version;.tar.xz">
<!ENTITY vala-download-ftp "&gnome-download-ftp;/vala/&vala-major-version;/vala-&vala-version;.tar.xz">
<!ENTITY vala-md5sum "27fd30535c51af5b87b0e7ffdbd906ef">
<!ENTITY vala-size "3.2 MB">
<!ENTITY vala-buildsize "171 MB (add 10 MB for tests)">
<!ENTITY vala-time "0.5 SBU (using parallelism=4; add 1.6 SBU for tests)">
]>
<sect1 id="vala" xreflabel="Vala-&vala-version;">
<?dbhtml filename="vala.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>Vala-&vala-version;</title>
<indexterm zone="vala">
<primary sortas="a-Vala">Vala</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Vala</title>
<para>
<application>Vala</application> is a new programming language that
aims to bring modern programming language features to
<application>GNOME</application> developers without imposing any
additional runtime requirements and without using a different ABI
compared to applications and libraries written in C.
</para>
&lfs84_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&vala-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&vala-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &vala-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &vala-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &vala-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &vala-time;
</para>
</listitem>
</itemizedlist>
<!--
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Optional patch to allow building without graphviz.
<ulink url="&patch-root;/vala-&vala-version;-avoid_graphviz-1.patch"/>
</para>
</listitem>
</itemizedlist>
-->
<bridgehead renderas="sect3">Vala Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="glib2"/>
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="graphviz"/> (Required for valadoc)
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="dbus"/> (Required for the tests),
<xref linkend="libxslt"/> (Required for generating the documentation),
<ulink url="https://ftp.gnu.org/gnu/help2man/">help2man</ulink>, and
<ulink url="https://weasyprint.org/">weasyprint</ulink>
</para>
<para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/vala"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Vala</title>
<para>Install <application>Vala</application> by running the following
commands:</para>
<!--
<note>
<para>If the recommended dependency <xref linkend="graphviz"/> is not
installed, apply a patch. This will prevent building the valadoc program
and libraries that can be used to generate API documentation in HTML format
from Vala source code.
</para>
<screen><userinput>patch -p1 -i ../vala-&vala-version;-avoid_graphviz-1.patch &amp;&amp;
ACLOCAL= autoreconf -fiv</userinput></screen>
</note>
-->
<screen><userinput>./configure --prefix=/usr &amp;&amp;
make</userinput></screen>
<para>
To test the results, issue: <command>make check</command>.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<option>--disable-valadoc</option>: This option is
required if <xref linkend="graphviz"/> is not installed.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Library</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
vala,
vala-&vala-major-version;,
valac,
valadoc,
vala-gen-introspect, and
vapigen (symlinks);
valac-&vala-major-version;,
valadoc-&vala-major-version;,
vala-gen-introspect-&vala-major-version;, and
vapigen-&vala-major-version;
</seg>
<seg>
libvala-&vala-major-version;.so and
libvaladoc-&vala-major-version;.so
</seg>
<seg>
/usr/include/vala-&vala-major-version;,
/usr/include/valadoc-&vala-major-version;,
/usr/lib/vala-&vala-major-version;,
/usr/lib/valadoc,
/usr/share/vala,
/usr/share/valadoc,
/usr/share/devhelp/books/vala-&vala-major-version;, and
/usr/share/vala-&vala-major-version;
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="valac">
<term><command>valac</command></term>
<listitem>
<para>
is a compiler that translates <application>Vala</application>
source code into C source and header files.
</para>
<indexterm zone="vala valac">
<primary sortas="b-valac">valac</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="vala-gen-introspect">
<term><command>vala-gen-introspect</command></term>
<listitem>
<para>
generates a GI file for GObject and
<application>GLib</application> based packages.
</para>
<indexterm zone="vala vala-gen-introspect">
<primary sortas="b-vala-gen-introspect">vala-gen-introspect</primary>
</indexterm>
</listitem>
</varlistentry>
<!--
<varlistentry id="vapicheck">
<term><command>vapicheck</command></term>
<listitem>
<para>
verifies the generated bindings.
</para>
<indexterm zone="vala vapicheck">
<primary sortas="b-vapicheck">vapicheck</primary>
</indexterm>
</listitem>
</varlistentry>-->
<varlistentry id="vapigen">
<term><command>vapigen</command></term>
<listitem>
<para>
is an utility which generates <application>Vala</application> API
(VAPI) files from GI files.
</para>
<indexterm zone="vala vapigen">
<primary sortas="b-vapigen">vapigen</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libvala">
<term><filename class="libraryfile">libvala-&vala-major-version;.so</filename></term>
<listitem>
<para>
contains the <application>Vala</application> API functions.
</para>
<indexterm zone="vala libvala">
<primary sortas="c-libvala">libvala-&vala-major-version;.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>