Author: pierre
Date: Thu Feb  8 05:59:40 2018
New Revision: 19738

Log:
Graphviz: make all dependencies optional and explain what they are useful for

Modified:
   trunk/BOOK/general.ent
   trunk/BOOK/general/genutils/graphviz.xml

Modified: trunk/BOOK/general.ent
==============================================================================
--- trunk/BOOK/general.ent      Wed Feb  7 16:15:43 2018        (r19737)
+++ trunk/BOOK/general.ent      Thu Feb  8 05:59:40 2018        (r19738)
@@ -1,12 +1,12 @@
 <!-- $LastChangedBy$ $Date$ -->
 
-<!ENTITY day          "07">                   <!-- Always 2 digits -->
+<!ENTITY day          "08">                   <!-- Always 2 digits -->
 <!ENTITY month        "02">                   <!-- Always 2 digits -->
 <!ENTITY year         "2018">
 <!ENTITY copyrightdate "2001-&year;">
 <!ENTITY copyholder   "The BLFS Development Team">
 <!ENTITY version      "&year;-&month;-&day;">
-<!ENTITY releasedate  "February 7th, &year;">
+<!ENTITY releasedate  "February 8th, &year;">
 <!ENTITY pubdate      "&year;-&month;-&day;"> <!-- metadata req. by TLDP -->
 <!ENTITY blfs-version "svn">                  <!-- svn|[release #] -->
 <!ENTITY lfs-version  "development">          <!-- x.y|development -->

Modified: trunk/BOOK/general/genutils/graphviz.xml
==============================================================================
--- trunk/BOOK/general/genutils/graphviz.xml    Wed Feb  7 16:15:43 2018        
(r19737)
+++ trunk/BOOK/general/genutils/graphviz.xml    Thu Feb  8 05:59:40 2018        
(r19738)
@@ -99,36 +99,87 @@
 
     <bridgehead renderas="sect3">Graphviz Dependencies</bridgehead>
 
-    <bridgehead renderas="sect4">Recommended</bridgehead>
-    <para role="recommended">
-      <xref linkend="freetype2"/>,
-      <xref linkend="fontconfig"/>,
-      <xref linkend="freeglut"/>,
-      <xref linkend="gdk-pixbuf"/>,
-      <xref linkend="libjpeg"/>,
-      <xref linkend="libpng"/>,
-      <xref linkend="librsvg"/>,
-      <xref linkend="pango"/> and
-      <xref linkend="xorg7-lib"/>
+    <note>
+      <para>
+        <application>Graphviz</application> basic usage does not need any
+        libraries out of what is found in the LFS book. Its <quote>core</quote>
+        rendering engine allows to generate several graphic formats, such as
+        Postscript, SVG, VML, .fig, and Tk. Those formats can be converted
+        to almost any other, using for example tools from <xref role="nodep"
+        linkend="imagemagick"/>. The dependencies below add the ability to
+        generate graph images in bitmap format, to display the graph image on
+        screen, to edit a graph by seeing directly the result image, or to view
+        large graphs. Since <application>Graphviz</application> is a dependency
+        of several other packages in this book, it is suggested to first build
+        it without any dependencies, then to rebuild it when you have built
+        enough packages to suit your needs.
+      </para>
+    </note>
+
+    <bridgehead renderas="sect4">Optional, for various bitmap 
outputs</bridgehead>
+    <para role="optional">
+      <xref linkend="pango"/>, with
+      <xref linkend="cairo"/>,
+      <xref linkend="xorg7-lib"/>,
+      <xref linkend="fontconfig"/>, and
+      <xref linkend="libpng"/>, to generate images in bitmap SVG, postscript,
+      PNG, and PDF formats, or displaying the image on screen
     </para>
 
-    <bridgehead renderas="sect4">Optional</bridgehead>
     <para role="optional">
-      <xref linkend="libglade"/>,
-      <xref linkend="gs"/>,
-      <xref linkend="gtk2"/>,
-      <xref linkend="qt5"/>,
+      Adding
+      <xref linkend="gtk2"/> with
+      <xref linkend="libjpeg"/> allows to add JPEG, BMP, TIF, and ICO formats,
+      and to display the image in a GTK+ window
+    </para>
+
+    <para role="optional">
+      <ulink url="http://www.libgd.org/";>GD Library</ulink> may be used
+      instead of <application>Pango</application>. It adds the ability to
+      generate images in GIF, VRML, and GD formats, but
+      <application>Pango</application> provides better outputs for the other
+      formats, and is needed for displaying images
+    </para>
+      
+    <para role="optional">
+      Other formats may be added with
+      <xref linkend="libwebp"/> (WebP support is considered experimental),
       <ulink url="http://openil.sourceforge.net/projects.php";>DevIL</ulink>,
-      <ulink 
url="http://linux.softpedia.com/get/Programming/Debuggers/Electric-Fence-3305.shtml/";>Electric
 Fence</ulink>,
       <ulink url="http://sourceforge.net/projects/lasi/";>libLASi</ulink>,
-      <ulink url="http://www.libgd.org/";>GD Library</ulink>, and
-      <ulink url="http://www.freedesktop.org/wiki/Software/glitz";>glitz</ulink>
+      <ulink 
url="http://www.freedesktop.org/wiki/Software/glitz";>glitz</ulink>,
+      and <ulink url="http://www.libming.org/";>libming</ulink> (Macromedia
+      Flash)
+    </para>
+
+    <bridgehead renderas="sect4">Optional, to load graphic images that may be
+    displayed inside the nodes of a graph</bridgehead>
+
+    <para role="optional">
+      <filename class="libraryfile">libgs.so</filename> from
+      <xref linkend="gs"/>,
+      <xref linkend="librsvg"/>, and
+      <xref linkend="poppler"/>
+    </para>
+
+    <bridgehead renderas="sect4">Optional, to build more tools</bridgehead>
+
+    <para role="optional">
+      <xref linkend="freeglut"/> (with <xref linkend="libglade"/>, 
+      <ulink url="https://projects.gnome.org/gtkglext/";>GtkGLExt</ulink>, and
+      <ulink url="http://gts.sourceforge.net/";>libGTS</ulink>, for building
+      the <command>smyrna</command> large graph viewer, which is
+      considered experimental),
+      <xref linkend="qt5"/>, for building the <command>gvedit</command>
+      graph editor. Another graph editor, <command>dotty</command> needs only
+      <xref role="nodep" linkend="xorg7-lib"/>
+<!-- use nodep to avoid repetition -->
     </para>
 
     <bridgehead renderas="sect4">Optional (To Build Language 
Bindings)</bridgehead>
     <para role="optional">
       <xref linkend="swig"/> (<application>SWIG</application> must be
       installed or no bindings will be built),
+      <xref linkend="gcc"/> (for the go language),
       <xref linkend="guile"/>,
       <xref linkend="openjdk"/>,
       <xref linkend="lua"/>,
@@ -143,6 +194,13 @@
       <ulink url="http://www.r-project.org/";>R</ulink>
     </para>
 
+    <bridgehead renderas="sect4">Optional (building tools)</bridgehead>
+    <para role="optional">
+      <ulink url="https://github.com/Snaipe/Criterion";>Criterion</ulink>
+          (framework for tests),
+      <ulink 
url="http://linux.softpedia.com/get/Programming/Debuggers/Electric-Fence-3305.shtml/";>Electric
 Fence</ulink>,
+    </para>
+
     <para condition="html" role="usernotes">User Notes:
       <ulink url="&blfs-wiki;/graphviz"/>
     </para>
@@ -223,6 +281,17 @@
       This is possible nevertheless by using the -I switch inside the variable.
     </para>
 
+    <para>
+      <option>--with-webp</option>: Even if <xref linkend="libwebp"/> is
+      installed, it is not included in the build without this option.
+    </para>
+
+    <para>
+      <option>--with-smyrna</option>: Even if the needed dependencies are 
+      installed, the interactive graph viewer <command>smyrna</command> is not
+      built without this option.
+    </para>
+
   </sect2>
 
   <sect2 role="configuration">
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-book
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to