Author: ken
Date: 2010-12-18 17:01:48 -0700 (Sat, 18 Dec 2010)
New Revision: 8741

Modified:
   trunk/BOOK/general.ent
   trunk/BOOK/introduction/welcome/changelog.xml
   trunk/BOOK/pst/printing/gs.xml
Log:
Update to ghostscript-9.00

Modified: trunk/BOOK/general.ent
===================================================================
--- trunk/BOOK/general.ent      2010-12-18 20:17:15 UTC (rev 8740)
+++ trunk/BOOK/general.ent      2010-12-19 00:01:48 UTC (rev 8741)
@@ -809,7 +809,7 @@
 <!-- Chapter 42 -->
 <!ENTITY cups-version                 "1.4.4">
 <!ENTITY LPRng-version                "3.8.28">
-<!ENTITY gs-version                   "8.71">
+<!ENTITY gs-version                   "9.00">
 <!ENTITY gutenprint-version           "5.2.5">
 
 <!-- Obsolete

Modified: trunk/BOOK/introduction/welcome/changelog.xml
===================================================================
--- trunk/BOOK/introduction/welcome/changelog.xml       2010-12-18 20:17:15 UTC 
(rev 8740)
+++ trunk/BOOK/introduction/welcome/changelog.xml       2010-12-19 00:01:48 UTC 
(rev 8741)
@@ -52,6 +52,11 @@
           <para>[ken] - Upgraded to freetype-2.4.4 (fixes ticket
           <ulink url="&blfs-ticket-root;3183">#3183</ulink>).</para>
         </listitem>
+        <listitem>
+          <para>[ken] - Upgraded to ghostscript-9.00 (fixes ticket
+          <ulink url="&blfs-ticket-root;3150">#3150</ulink>). Many thanks to
+         David Jensen and Randy for their assistance.</para>
+        </listitem>
       </itemizedlist>
     </listitem>
 

Modified: trunk/BOOK/pst/printing/gs.xml
===================================================================
--- trunk/BOOK/pst/printing/gs.xml      2010-12-18 20:17:15 UTC (rev 8740)
+++ trunk/BOOK/pst/printing/gs.xml      2010-12-19 00:01:48 UTC (rev 8741)
@@ -6,11 +6,13 @@
 
   <!-- <!ENTITY gs-download-http 
"&sourceforge-repo;/ghostscript/ghostscript-&gs-version;.tar.bz2"> -->
   <!ENTITY gs-download-http 
"http://ghostscript.com/releases/ghostscript-&gs-version;.tar.gz";>
-  <!ENTITY gs-download-ftp  
"ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/GPL/gs871/ghostscript-&gs-version;.tar.gz";>
-  <!ENTITY gs-md5sum        "51a522a5b4818bd3dc7c1c0e9dd22bad">
-  <!ENTITY gs-size          "25.2 MB">
-  <!ENTITY gs-buildsize     "255 MB (includes installing libgs.so and both 
font tarballs)">
-  <!ENTITY gs-time          "3.3 SBU (includes building and installing 
libgs.so)">
+  <!-- no response 2010-12-18
+  <!ENTITY gs-download-ftp  
"ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/GPL/gs900/ghostscript-&gs-version;.tar.gz";>
 -->
+  <!ENTITY gs-download-ftp  " ">
+  <!ENTITY gs-md5sum        "177c33b796ed28d3d568e230a6dbdba5">
+  <!ENTITY gs-size          "22.3 MB">
+  <!ENTITY gs-buildsize     "170 MB (includes installing libgs.so and both 
font tarballs)">
+  <!ENTITY gs-time          "2.7 SBU (includes building and installing 
libgs.so)">
 
   <!-- <!ENTITY gs-standard-fonts-download 
"ftp://ftp.imagemagick.org/pub/ImageMagick/delegates/ghostscript-fonts-std-8.11.tar.gz";>
 -->
   <!ENTITY gs-standard-fonts-download 
"&sourceforge-repo;/gs-fonts/ghostscript-fonts-std-8.11.tar.gz">
@@ -43,7 +45,7 @@
     for PostScript data with the ability to render PostScript to different
     targets.</para>
 
-    &lfs65_checked;
+    &lfs67_checked;
 
     <bridgehead renderas="sect3">Package Information</bridgehead>
     <itemizedlist spacing="compact">
@@ -98,7 +100,12 @@
     <itemizedlist spacing="compact">
       <title>Patches</title>
       <listitem>
-        <para>Optional patch: <ulink
+        <para>Required patch: <ulink
+        url="&patch-root;/ghostscript-&gs-version;-security_fixes-1.patch"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>Recommended patch (unless you build without JPEG2000 support) : 
<ulink
         url="&patch-root;/ghostscript-&gs-version;-system_jasper-1.patch"/>
         </para>
       </listitem>
@@ -106,17 +113,24 @@
 
     <bridgehead renderas="sect3">Ghostscript Dependencies</bridgehead>
 
+    <bridgehead renderas="sect4">Recommended</bridgehead>
+    <para role="optional"><xref linkend="expat"/>,
+    <xref linkend="freetype2"/>,
+    <xref linkend="jasper"/>
+    <xref linkend="libjpeg"/>,
+    <xref linkend="libpng"/>,
+    <xref linkend="libtiff"/>, and
+    <xref linkend="lcms"/></para>
+
     <bridgehead renderas="sect4">Optional</bridgehead>
-    <para role="optional"><xref linkend="libjpeg"/>,
-    <xref linkend="libpng"/>,
-    <xref linkend="libtiff"/>,
-    <xref linkend="jasper"/>,
+    <para role="optional">
     <xref linkend="cairo"/>,
     <xref linkend="fontconfig"/>,
     <xref linkend="gtk2"/>,
     <xref linkend="cups"/>,
-    <xref linkend="x-window-system"/>,
-    <ulink url="http://www.linuxprinting.org/ijs/";>IJS</ulink>, and
+    <xref linkend="x-window-system"/>, and
+    <!-- the link for ijs source ultimately takes users back to the 
ghostscript site
+    <ulink url="http://www.linuxprinting.org/ijs/";>IJS</ulink>, and -->
     <ulink 
url="http://packages.debian.org/unstable/source/libpaper";>libpaper</ulink></para>
 
     <para condition="html" role="usernotes">User Notes:
@@ -127,44 +141,58 @@
   <sect2 role="installation">
     <title>Installation of Ghostscript</title>
 
-    <note>
+    <para>Install <application>GPL Ghostscript</application> by running the
+    following commands:</para>
+
+      <note>
       <para>The <application>Ghostscript</application> build system is not
       user-friendly. In order to use system copies of various graphics
       libraries, you must do it using unconventional methods.</para>
+      </note>
 
-      <para>First, if you wish to use the system-installed version of
-      <application>JasPer</application>, remove the local copy from the
-      source tree and apply a patch:</para>
+      <para>Begin by patching some vulnerabilities:</para>
 
-<screen><userinput>rm -rf jasper &amp;&amp;
-patch -Np1 -i 
../ghostscript-&gs-version;-system_jasper-1.patch</userinput></screen>
+<screen><userinput>patch -Np1 -i 
../ghostscript-&gs-version;-security_fixes-1.patch
+</userinput></screen>
 
-      <para>Next, if you wish to use the system-installed copies of
-      <application>libjpeg</application> and <application>libpng</application>,
-      remove the local copies from the source tree:</para>
+      <para><application>GPL Ghostscript</application> includes (old) copies of
+      several libraries. Some of these seem to have been patched to fix known
+      vulnerabilities, but others of these copies are less-well maintained.
+      To ensure that any future fixes are applied throughout the whole system,
+      it is recommended that you build the released versions of these libraries
+      and then configure <application>GPL Ghostscript</application> to link to
+      them. This configuration has several steps.</para>
 
-<screen><userinput>rm -rf jpeg &amp;&amp;
-rm -rf libpng</userinput></screen>
+      <para>Unless you intend to build <application>GPL 
Ghostscript</application>
+      without support for <literal>JPEG2000</literal> files, apply a patch to
+      allow it to build against a current system-installed version of
+      <application>JasPer</application>:</para>
 
-      <para>If you wish to use the system-installed copy of
-      <application>libtiff</application>, add the parameter
-      <option>--with-system-libtiff</option> to the 
<command>./configure</command>
-      command shown below. Also remove the
-      <filename class='directory'>tiff</filename> directory from the source 
tree
-      to prevent the <application>Ghostscript</application> build from using 
any
-      of its local copy.</para>
+<screen><userinput>patch -Np1 -i 
../ghostscript-&gs-version;-system_jasper-1.patch
+</userinput></screen>
 
-      <para>Unfortunately, <application>Ghostscript</application> will use 
local
-      copies of <application>Expat</application> and
-      <application>Zlib</application> from the source tree. There doesn't
-      appear to be an easy way to use system-installed copies of these 
libraries
-      without doing some hacking of the sources.</para>
-    </note>
+      <para>Remove the local copies of <application>expat</application>,
+      <application>JasPer</application>, <application>lcms</application>,
+      <application>libjpeg</application>, <application>libpng</application>,
+      <application>libtiff</application>, and <application>zlib</application>:
+      </para>
 
-    <para>Install <application>GPL Ghostscript</application> by running the
-    following commands:</para>
+<screen><userinput>rm -rf expat jasper lcms jpeg libpng tiff zlib
+</userinput></screen>
 
-<screen><userinput>./configure --prefix=/usr --enable-dynamic 
--with-drivers=ALL,x11 &amp;&amp;
+    <para>Run the configure command:</para>
+
+<screen><userinput>./configure --prefix=/usr --enable-dynamic 
--with-drivers=ALL,x11 --with-system-libtiff 
--disable-compile-inits</userinput></screen>
+
+    <para>To ensure the build is able to use the system versions of
+    <application>expat</application>, <application>freetype</application>, and
+    <application>lcms</application> it is necessary to make some changes and an
+    addition to the <literal>Makefile</literal> before building the 
package:</para>
+
+<screen><userinput>sed -i  -e 's|SHARE_LCMS=0|SHARE_LCMS=1|' \
+        -e 's|LCMSSRCDIR=lcms|LCMSSRCDIR=/usr|' \
+        -e 's|=imdi|&amp;\n\n# Use system expat library\n\nSHARE_EXPAT=1|' \
+        -e 's|SHARE_FT=0|SHARE_FT=1|' Makefile &amp;&amp;
 make</userinput></screen>
 
     <para>This package does not come with a test suite. However, you may test
@@ -175,19 +203,27 @@
 
     <para>Now, as the <systemitem class="username">root</systemitem> 
user:</para>
 
-<screen role="root"><userinput>make install 
docdir=/usr/share/doc/ghostscript-&gs-version; &amp;&amp;
-
+<!-- for 9.00 docdir is only referenced by GS_DOCDIR which is itself not 
referenced
+ so the docs still go into /usr/share/ghostscript/9.00/
+<screen role="root"><userinput>make install 
docdir=/usr/share/doc/ghostscript-&gs-version; &amp;&amp;-->
+<screen role="root"><userinput>make install &amp;&amp;
 for INSTFILE in `ls doc`
 do
-  if [ ! -f          /usr/share/doc/ghostscript-&gs-version;/$INSTFILE ]; then
+  <!--if [ ! -f          /usr/share/doc/ghostscript-&gs-version;/$INSTFILE ]; 
then -->
+  if [ ! -f          /usr/share/ghostscript/&gs-version;/doc/$INSTFILE ]; then
     install -v -m644 doc/$INSTFILE \
-                     /usr/share/doc/ghostscript-&gs-version;
+                     /usr/share/ghostscript/&gs-version;/doc
+                     <!--/usr/share/doc/ghostscript-&gs-version;-->
   fi
 done &amp;&amp;
 
-install -v -m755 -d /usr/share/doc/ghostscript-&gs-version;/figures &amp;&amp;
+<!--install -v -m755 -d /usr/share/doc/ghostscript-&gs-version;/figures 
&amp;&amp;-->
+install -v -m755 -d /usr/share/ghostscript/&gs-version;/doc/figures &amp;&amp;
 install -v -m644    doc/figures/* \
-                    
/usr/share/doc/ghostscript-&gs-version;/figures</userinput></screen>
+                    /usr/share/ghostscript/&gs-version;/doc/figures &amp;&amp;
+                    <!--/usr/share/doc/ghostscript-&gs-version;/figures-->
+ln -sv ../ghostscript/&gs-version;/doc /usr/share/doc/ghostscript-&gs-version;
+</userinput></screen>
 
     <para>To install the shared library
     <filename class='libraryfile'>libgs.so</filename>, run the
@@ -229,13 +265,23 @@
     selection so that the test to render the tiger will work on 32-bit systems
     (this does no harm on the <literal>x86_64</literal> architecture, although
     it is not required there).</para>
+    <para><command>--disable-compile-inits</command>: This parameter is 
intended
+    to avoid compiling initialization files into the executables.  It is used 
here
+    to simplify building agaisnt the system version of
+    <application>zlib</application>.</para>
+    <para><option>--without-jasper</option>: If you know you do not wish to 
print
+    any <literal>JPEG2000</literal> files, this switch (and removing the
+    <filename class="directory">jasper/</filename> source) will achieve 
this.</para>
+    <para><option>--without-jbig2dec</option>: The <literal>JBIG2</literal>
+    decompression code (used for some faxes) can be disabled by using this 
switch
+    and removing the <filename class="directory">jbig2dec/</filename> 
source.</para>
     <para><command>install ...</command>: Some packages
     (<application>ImageMagick</application> is one) need the
     <application>Ghostscript</application> interface headers in place to link
     to the shared library. These commands install the headers.</para>
 
-    <!-- <para><command>ln -sv ... 
/usr/share/doc/ghostscript-&gs-version;</command>: This puts
-    the documentation where it is expected to be found.</para> -->
+    <para><command>ln -sv ... 
/usr/share/doc/ghostscript-&gs-version;</command>: This puts
+    the documentation where it is expected to be found.</para>
 
     <para><command>ln -v -s ghostscript /usr/include/ps</command>: Some
     packages expect to find the interface headers in an alternate
@@ -252,12 +298,14 @@
 
       <seglistitem>
         <seg>bdftops, dumphint, dvipdf, eps2eps, fixmswrd.pl, font2c, gs, gsbj,
-        gsdj, gsdj500, gslj, gslp, gsnd, lprsetup.sh, pdf2dsc, pdf2ps, pdfopt,
+        gsc (from soinstall), gsdj, gsdj500, gslj, gslp, gsnd, gsx (from 
soinstall),
+        lprsetup.sh, pdf2dsc, pdf2ps, pdfopt,
         pf2afm, pfbtopfa, printafm, ps2ascii, ps2epsi, ps2pdf, ps2pdf12,
         ps2pdf13, ps2pdf14, ps2pdfwr, ps2ps, ps2ps2, pv.sh, unix-lpr.sh, and
         wftopfa</seg>
         <seg>libgs.so </seg>
         <seg>/usr/include/ghostscript, /usr/lib/ghostscript, 
/usr/share/ghostscript,
+        <!--and /usr/share/doc/ghostscript</seg>-->
         and /usr/share/doc/ghostscript-&gs-version;</seg>
       </seglistitem>
     </segmentedlist>

-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-book
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to