source: xsoft/graphweb/mozilla.xml@ 5dc41f0

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 5dc41f0 was 5dc41f0, checked in by Randy McMurchy <randy@…>, 18 years ago

Modified the instructions for linking to installed plugins and removed the commands to create /usr/lib/mozilla compatibility links from the Mozilla instructions

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@5648 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 31.8 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY mozilla-download-http "http://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
8 <!ENTITY mozilla-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
9 <!ENTITY mozilla-md5sum "f1ad6adbbc0510eb76d352c94c801fac">
10 <!ENTITY mozilla-size "30.4 MB">
11 <!ENTITY mozilla-buildsize "575 MB">
12 <!ENTITY mozilla-time "9.4 SBU">
13
14 <!--
15
16 BLFS Devs:
17
18 The information below is for the Enigmail and IPC downloads. Additionally,
19 a makemake file is download because we cannot build Enigmail using an
20 object directory without it. Informaiton about the Enigmail source to
21 check for updates is located at http://enigmail.mozdev.org/source.html.
22
23 The link to the makemake file is near the end of the page in the section
24 titled "Using OBJDIR when building Enigmail". Ensure you check the rev
25 level of the link and update the "enigmail-makemake-version" entitity
26 if necessary. In case you are wondering why the version has the question
27 mark and "rev=" in it, it is because the complete URL is used in a command
28 and it would extend past the 71 characters that PDF render is limited to.
29 It should make sense after you see it rendered in the wget command.
30
31 -->
32
33 <!ENTITY mozilla-enigmail-version "0.93.0">
34 <!ENTITY mozilla-ipc-version "1.1.3">
35 <!ENTITY enigmail-makemake-version "?rev=1.3">
36 <!ENTITY mozilla-enigmail-download "http://www.mozilla-enigmail.org/downloads/src/enigmail-&mozilla-enigmail-version;.tar.gz">
37 <!ENTITY mozilla-ipc-download "http://www.mozilla-enigmail.org/downloads/src/ipc-&mozilla-ipc-version;.tar.gz">
38 <!ENTITY enigmail-makemake-download "http://www.mozdev.org/source/browse/~checkout~/enigmail/src/makemake">
39 <!ENTITY mozilla-enigmail-md5sum "cb7126705924cb7f0de205b4ff4e28b4">
40 <!ENTITY mozilla-ipc-md5sum "64ba4c6e3b52568468c4f6680ec7e679">
41]>
42
43<sect1 id="mozilla" xreflabel="Mozilla-&mozilla-version;">
44 <?dbhtml filename="mozilla.html" ?>
45
46 <sect1info>
47 <othername>$LastChangedBy$</othername>
48 <date>$Date$</date>
49 <keywordset>
50 <keyword role="package">mozilla-&mozilla-version;-source.tar</keyword>
51 <keyword role="ftpdir">mozilla</keyword>
52 </keywordset>
53 </sect1info>
54
55 <title>Mozilla-&mozilla-version;</title>
56
57 <indexterm zone="mozilla">
58 <primary sortas="a-Mozilla">Mozilla</primary>
59 </indexterm>
60
61 <sect2 role="package">
62 <title>Introduction to Mozilla</title>
63
64 <para><application>Mozilla</application> is a browser suite, the Open
65 Source sibling of <application>Netscape</application>. It includes the
66 browser, composer, mail and news clients, a calendar client and an
67 IRC client.</para>
68
69 <para>The <application>Mozilla</application> project also hosts two
70 subprojects that aim to satisfy the needs of users who don't need the
71 complete browser suite or prefer to have separate applications for
72 browsing and e-mail. These subprojects are <ulink
73 url="http://www.mozilla.com/firefox/">Mozilla Firefox</ulink>,
74 (a stand-alone browser based on the <application>Mozilla</application>
75 source code) and <ulink
76 url="http://www.mozilla.com/thunderbird/">Mozilla Thunderbird</ulink>,
77 (a stand-alone mail/newsgroup client based on the
78 <application>Mozilla</application> source code). The build instructions
79 for these two applications are discussed in separate sections:</para>
80
81 <itemizedlist>
82 <listitem>
83 <para><xref linkend="firefox"/></para>
84 </listitem>
85 <listitem>
86 <para><xref linkend="thunderbird"/></para>
87 </listitem>
88 </itemizedlist>
89
90 <bridgehead renderas="sect3">Package Information</bridgehead>
91 <itemizedlist spacing="compact">
92 <listitem>
93 <para>Download (HTTP): <ulink url="&mozilla-download-http;"/></para>
94 </listitem>
95 <listitem>
96 <para>Download (FTP): <ulink url="&mozilla-download-ftp;"/></para>
97 </listitem>
98 <listitem>
99 <para>Download MD5 sum: &mozilla-md5sum;</para>
100 </listitem>
101 <listitem>
102 <para>Download size: &mozilla-size;</para>
103 </listitem>
104 <listitem>
105 <para>Estimated disk space required: &mozilla-buildsize;</para>
106 </listitem>
107 <listitem>
108 <para>Estimated build time: &mozilla-time;</para>
109 </listitem>
110 </itemizedlist>
111
112 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
113 <itemizedlist spacing="compact">
114 <listitem>
115 <para>Required patch: <ulink
116 url="&patch-root;/mozilla-&mozilla-version;-gcc4-1.patch"/></para>
117 </listitem>
118 <listitem>
119 <para>Required patch: <ulink
120 url="&patch-root;/mozilla-&mozilla-version;-gfx_fixes-1.patch"/></para>
121 </listitem>
122 <listitem>
123 <para>Required patch (if using system-installed versions of
124 <application>NSS</application> and <application>NSPR</application>):
125 <ulink
126 url="&patch-root;/mozilla-&mozilla-version;-system_nss-1.patch"/>
127 </para>
128 </listitem>
129 </itemizedlist>
130
131 <para>To enable the <application>Enigmail</application> extension to
132 the <application>Mozilla</application> mail client, you'll need to
133 download the two tarballs and <command>makemake</command> file listed
134 below. The <application>Enigmail</application> extension allows users to
135 access the authentication and encryption features provided by the
136 <application>GnuPG</application> package. The
137 <application>Enigmail</application> extension will not operate correctly
138 unless you have <xref linkend="gnupg"/> installed.</para>
139
140 <itemizedlist spacing='compact'>
141 <listitem>
142 <para><ulink url="&mozilla-enigmail-download;"/></para>
143 </listitem>
144 <listitem>
145 <para>Download MD5 sum (Enigmail): &mozilla-enigmail-md5sum;</para>
146 </listitem>
147 <listitem>
148 <para><ulink url="&mozilla-ipc-download;"/></para>
149 </listitem>
150 <listitem>
151 <para>Download MD5 sum (IPC): &mozilla-ipc-md5sum;</para>
152 </listitem>
153 <listitem>
154 <para><ulink
155 url="&enigmail-makemake-download;&enigmail-makemake-version;"/></para>
156 </listitem>
157 </itemizedlist>
158
159 <para>The <command>makemake</command> file is an enhanced version that will
160 be copied into the source tree to replace an existing file during the
161 installation instructions. The instructions expect the file to be named
162 <filename>mozilla-&mozilla-version;-enigmail_makemake</filename>. If you
163 have <xref linkend="wget"/> installed, you can download and rename the file
164 in one step using the following command:</para>
165
166<screen><userinput>wget -O mozilla-&mozilla-version;-enigmail_makemake \
167&enigmail-makemake-download;\
168&enigmail-makemake-version;</userinput></screen>
169
170 <bridgehead renderas="sect3">Mozilla Dependencies</bridgehead>
171
172 <bridgehead renderas="sect4">Required</bridgehead>
173 <para role="required"><xref linkend="gtk2"/>,
174 <xref linkend="libidl"/>, and
175 <xref linkend="zip"/></para>
176
177 <para>Note: <application>libjpeg</application> should have been installed
178 before <application>GTK+</application> and should exist on your system. If
179 for some reason you haven't installed <application>libjpeg</application>,
180 you should remove the <option>--with-system-jpeg</option> option from the
181 <filename>.mozconfig</filename> file created below.</para>
182
183 <bridgehead renderas="sect4">Recommended (if you will be installing any
184 other package that utilizes NSS/NSPR, such as
185 <application>Firefox</application> or
186 <application>Thunderbird</application>)</bridgehead>
187 <para role="recommended"><xref linkend="nss"/></para>
188
189 <bridgehead renderas="sect4">Optional</bridgehead>
190 <para role="optional"><xref linkend="unzip"/>,
191 <xref linkend="gnome-vfs"/> (to build the gnomevfs extension),
192 <xref linkend="libart_lgpl"/>, and
193 <xref linkend="heimdal"/> or <xref linkend="mitkrb"/>
194 (for the GSSAPI libraries to build the negotiateauth extension)</para>
195
196 </sect2>
197
198 <sect2 role="installation">
199 <title>Installation of Mozilla</title>
200
201 <para>The configuration of <application>Mozilla</application> is
202 accomplished by creating a <filename>.mozconfig</filename> file containing
203 the desired configuration options. A default <filename>.mozconfig</filename>
204 file is created below. To see the entire list of available configuration
205 options (and an abbreviated description of each one), issue
206 <command>./configure --help</command>. Additional information can also be
207 found below in the section titled <xref linkend="add-mozconfig"/>. If you
208 are going to use system-installed versions of the
209 <application>NSS</application> and <application>NSPR</application>
210 libraries, ensure you uncomment the two lines at the bottom of the file. If
211 you would prefer to download the file instead of creating it by typing or
212 cut-and-pasting, you can find it at <ulink
213 url="&files-anduin;/mozilla-&mozilla-version;-mozconfig"/>
214 (the file must be installed in the root of the source tree
215 <filename class='directory'>mozilla</filename> directory, and named
216 <filename>.mozconfig</filename>). Create the file by issuing the following
217 command:</para>
218
219<screen><userinput>cat &gt; .mozconfig &lt;&lt; "EOF"
220<literal># Options for client.mk
221
222mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../mozilla-build
223
224# Options for 'configure' (same as command-line options)
225
226# Mandatory options
227ac_add_options --enable-application=suite
228ac_add_options --prefix=/usr
229
230# Options for system-installed software
231ac_add_options --with-system-zlib
232ac_add_options --with-system-png
233ac_add_options --with-system-jpeg
234
235# Options in all Mozilla-family builds
236ac_add_options --enable-official-branding
237ac_add_options --enable-strip
238ac_add_options --disable-tests
239ac_add_options --disable-installer
240ac_add_options --disable-accessibility
241
242# Options used for graphics settings in Mozilla Suite (Not Seamonkey)
243ac_add_options --enable-default-toolkit=gtk2
244ac_add_options --enable-xft
245ac_add_options --disable-freetype2
246
247# Options used just for Mozilla Suite (Not Seamonkey)
248ac_add_options --enable-optimize
249ac_add_options --disable-debug
250ac_add_options --disable-logging
251ac_add_options --enable-crypto
252ac_add_options --enable-extensions=all
253
254# Options used just for Mozilla Suite
255ac_add_options --enable-ldap
256ac_add_options --enable-calendar
257
258# Options used for system-installed NSS/NSPR
259#ac_add_options --with-system-nspr
260#ac_add_options --with-system-nss</literal>
261
262EOF</userinput></screen>
263
264 <para>If you have system-installed Network Security Services (NSS) and
265 Netscape Portable Runtime (NSPR) libraries and you uncommented the
266 appropriate lines in the <filename>.mozconfig</filename> file to utilize
267 them, apply the following patch:</para>
268
269<screen><userinput>patch -Np1 -i ../mozilla-&mozilla-version;-system_nss-1.patch</userinput></screen>
270
271 <para>Compile <application>Mozilla</application> by running the
272 following commands:</para>
273
274<screen><userinput>export MOZILLA_OFFICIAL="1" &amp;&amp;
275export BUILD_OFFICIAL="1" &amp;&amp;
276
277patch -Np1 -i ../mozilla-&mozilla-version;-gfx_fixes-1.patch &amp;&amp;
278patch -Np1 -i ../mozilla-&mozilla-version;-gcc4-1.patch &amp;&amp;
279
280make -f client.mk build</userinput></screen>
281
282 <para>If you're building the <application>Mozilla</application>
283 mail/newsgroup client and plan to install the
284 <application>Enigmail</application> extension, issue the following
285 commands:</para>
286
287<screen><userinput>tar -xf ../enigmail-&mozilla-enigmail-version;.tar.gz -C extensions &amp;&amp;
288tar -xf ../ipc-&mozilla-ipc-version;.tar.gz -C extensions &amp;&amp;
289
290install -v -m755 -b ../mozilla-&mozilla-version;-enigmail_makemake \
291 extensions/ipc/makemake &amp;&amp;
292install -v -m755 -b ../mozilla-&mozilla-version;-enigmail_makemake \
293 extensions/enigmail/makemake &amp;&amp;
294
295cd extensions/ipc &amp;&amp;
296./makemake -r &amp;&amp;
297
298cd ../enigmail &amp;&amp;
299./makemake -r &amp;&amp;
300
301cd ../.. &amp;&amp;
302make -C ../mozilla-build/extensions/ipc &amp;&amp;
303make -C ../mozilla-build/extensions/enigmail &amp;&amp;
304make -C ../mozilla-build/extensions/enigmail xpi</userinput></screen>
305
306 <para>Install <application>Mozilla</application> by issuing the following
307 commands as the <systemitem class="username">root</systemitem> user:</para>
308
309<screen role="root"><userinput>make -f client.mk install &amp;&amp;
310
311install -v -m644 ../mozilla-build/dist/public/ldap-private/* \
312 /usr/include/mozilla-&mozilla-version;/ldap &amp;&amp;
313
314install -v -m755 -d /usr/lib/mozilla-&mozilla-version;/defaults/isp/US &amp;&amp;
315install -v -m644 mailnews/base/ispdata/movemail.rdf \
316 /usr/lib/mozilla-&mozilla-version;/defaults/isp &amp;&amp;
317ln -v -s ../movemail.rdf /usr/lib/mozilla-&mozilla-version;/defaults/isp/US</userinput></screen>
318
319<!-- Commenting this out per the discussion on BLFS-Dev about this.
320 The stuff commented out below is replaced with text in the
321 Configuration section to create links to any system-wide
322 plugins the user may have installed
323
324if [ -L /usr/lib/mozilla/plugins ]; then
325 rm /usr/lib/mozilla/plugins
326fi &amp;&amp;
327if [ -L /usr/lib/mozilla ]; then
328 rm /usr/lib/mozilla
329fi &amp;&amp;
330
331install -v -m755 -d /usr/lib/mozilla/plugins &amp;&amp;
332cp -v /usr/lib/mozilla-1.7.12/plugins/* /usr/lib/mozilla/plugins &amp;&amp;
333rm -f /usr/lib/mozilla-1.7.12/plugins &amp;&amp;
334ln -v -s ../mozilla/plugins /usr/lib/mozilla-1.7.12 &amp;&amp;
335-->
336
337<!-- The following commented out per the discussion on BLFS-Dev. It
338 has been determined that we will no longer continue to support
339 broken programs that don't look at pkgconfig files to find out
340 where Mozilla is installed
341
342ln -v -nsf mozilla-&mozilla-version; /usr/include/mozilla &amp;&amp;
343ln -v -nsf mozilla-&mozilla-version; /usr/lib/mozilla &amp;&amp;
344-->
345
346 <para>If you built <application>Mozilla</application> utilizing
347 system-installed NSS and NSPR libraries, the
348 <filename>mozilla-ns*.pc</filename> <application>pkgconfig</application>
349 files need to be modified. Issue the following command as the
350 <systemitem class="username">root</systemitem> user:</para>
351
352<screen role="root"><userinput>sed -i 's|/mozilla-&mozilla-version;||' /usr/lib/pkgconfig/mozilla-ns*.pc</userinput></screen>
353
354 <para>If you did <emphasis role="strong">NOT</emphasis> build
355 <application>Mozilla</application> utilizing system-installed NSS and
356 NSPR libraries, issue the following commands as the
357 <systemitem class="username">root</systemitem> user to install the NSS
358 interface headers:</para>
359
360<screen role="root"><userinput>install -v -m755 -d /usr/include/mozilla-&mozilla-version;/nss &amp;&amp;
361cp -v -Lf ../mozilla-build/dist/{private,public}/nss/*.h \
362 /usr/include/mozilla-&mozilla-version;/nss</userinput></screen>
363
364 <para>If you built the <application>Enigmail</application> extension,
365 issue the following commands as the <systemitem
366 class="username">root</systemitem> user to install the
367 <filename>.xpi</filename> file into the
368 <filename class='directory'>/usr/lib/mozilla-&mozilla-version;</filename>
369 directory:</para>
370
371<screen role="root"><userinput>install -v -m755 -d /usr/lib/mozilla-&mozilla-version;/xpi_store &amp;&amp;
372install -v -m644 ../mozilla-build/dist/bin/enigmail-&mozilla-enigmail-version;-*.xpi \
373 /usr/lib/mozilla-&mozilla-version;/xpi_store</userinput></screen>
374
375 <para>There are two methods you can use to install the
376 <application>Enigmail</application> extension. Both are shown here and
377 provide the same functionality. The first method must be accomplished
378 now (before the object directory is removed) and uses the conventional
379 <command>make install</command> command to install the
380 <application>Enigmail</application> files straight from the distribution
381 directory of the object directory. An alternate method is shown as it
382 installs using the <filename class='extension'>.xpi</filename> file
383 created earlier and can be done later (at any time you desire) as the
384 file used to install <application>Enigmail</application> was copied into
385 <filename
386 class='directory'>/usr/lib/mozilla-&mozilla-version;/xpi_store</filename>
387 in the previous step. This method can be used to install any
388 downloaded <application>Mozilla</application> extension distributed in a
389 <filename class='extension'>.xpi</filename> file. There are many
390 extensions available for <application>Mozilla</application>. A list
391 containing many of them can be found at
392 <ulink url="http://extensionroom.mozdev.org/"/>.</para>
393
394 <para>If you want to install the <application>Enigmail</application>
395 extension now, issue the following commands as the
396 <systemitem class="username">root</systemitem> user:</para>
397
398<screen role="root"><userinput>make -C ../mozilla-build/extensions/ipc install &amp;&amp;
399make -C ../mozilla-build/extensions/enigmail install</userinput></screen>
400
401 <para>To install an extension from a created or download
402 <filename class='extension'>.xpi</filename> file, you simply need to
403 <quote>open</quote> the <filename class='extension'>.xpi</filename> file
404 using the <quote>Open File</quote> option of the <quote>File</quote>
405 menu of the Navigator window. You can browse to find the file (for example,
406 the <application>Enigmail</application>
407 <filename class='extension'>.xpi</filename> file is located in
408 <filename
409 class='directory'>/usr/lib/mozilla-&mozilla-version;/xpi_store</filename>),
410 select it, then follow the prompts to install the extension.</para>
411
412 <!-- Commenting this out as there really is no need to put the Mozilla
413 Suite versions of NSS/NSPR in a system-wide location when there
414 is now a BLFS package that does this.
415
416 <para>Some libraries, including the Netscape Portable Runtime (NSPR) and
417 Network Security Services (NSS) libraries, installed by
418 <application>Mozilla</application> are also needed by other packages.
419 These libraries should be in <filename class="directory">/usr/lib</filename>
420 so that other packages can link against them. As the <systemitem
421 class="username">root</systemitem> user, move them as follows:</para>
422
423<screen role="root"><userinput>for i in \
424 lib{nspr4,plc4,plds4,nss3,smime3,softokn3,ssl3}.so libsoftokn3.chk
425do
426 mv -v /usr/lib/mozilla-&mozilla-version;/$i /usr/lib/
427 ln -v -sf ../$i /usr/lib/mozilla-&mozilla-version;/
428done</userinput></screen>
429
430 -->
431
432 <!-- Commenting this out for now, as I believe this is only necessary
433 for the binary versions of Mozilla. I've built this and had many
434 system users access Mozilla simultaneously without having to do
435 the steps shown here.
436
437 <para>Create the required component registries to enable multi-user
438 installs. These steps should be preformed by the <systemitem
439 class="username">root</systemitem> user each time a
440 <application>Mozilla</application> add-on is installed. This will allow
441 unprivileged users to run <command>mozilla</command>. Enable multi-user
442 operation by executing the following:</para>
443
444<screen role="root"><userinput>cd /usr/lib/mozilla-&mozilla-version; &amp;&amp;
445export LD_LIBRARY_PATH="$PWD" &amp;&amp;
446export MOZILLA_FIVE_HOME="$PWD" &amp;&amp;
447./regxpcom &amp;&amp;
448./regchrome &amp;&amp;
449touch `find . -name *.rdf`</userinput></screen>
450
451 -->
452
453 <para>Unset the build variables from the unprivileged user's
454 environment:</para>
455
456<screen><userinput>unset MOZILLA_OFFICIAL &amp;&amp;
457unset BUILD_OFFICIAL</userinput></screen>
458
459 <note>
460 <para>You should run <command>/usr/bin/mozilla</command> once as the
461 <systemitem class="username">root</systemitem> user (or any user with
462 write privileges) to create some necessary additional files in the
463 <filename class='directory'>/usr</filename> hierarchy. Also do this
464 each time you install additional extensions.</para>
465 </note>
466
467 </sect2>
468
469 <sect2 role="commands" id="add-mozconfig"
470 xreflabel="Additional .mozconfig Options">
471
472 <title>Additional .mozconfig Options</title>
473
474 <para>Information about some of the additional options which can be added
475 to the <filename>.mozconfig</filename> configuration file is shown below.
476 Note that this is just a few of the options. You may wish to run
477 <command>./configure --help</command> and review each of the listed options
478 to discover what affect they have on the build. Feel free to add or remove
479 options to tailor the build to your desires. Listed below are some common
480 options not in the default <filename>.mozconfig</filename> file but can be
481 added in order to have the described effect on the Mozilla compile.</para>
482
483 <para><option>ac_add_options --enable-elf-dynstr-gc</option>: Removes
484 un-referenced strings from ELF shared objects generated during the build.
485 Note that this option breaks the build on alpha.</para>
486
487 <para><option>ac_add_options --disable-mailnews</option>: Disables the mail
488 and news clients.</para>
489
490 <para><option>ac_add_options --disable-ldap</option>: Disables LDAP support,
491 recommended if mail is disabled.</para>
492
493 <para><option>ac_add_options --enable-xterm-updates</option>: Displays the
494 current command in the <command>xterm</command> window title during the
495 compilation.</para>
496
497 <para><option>ac_add_options --enable-plaintext-editor-only</option>:
498 Disables support for HTML editing. Do not use this switch if you are
499 building the mail-news component.</para>
500
501 </sect2>
502
503 <sect2 role="commands">
504 <title>.mozconfig Option Explanations</title>
505
506 <para>To simplify reading the options below, they are labeled without
507 <parameter>ac_add_options</parameter> inserted at the beginning of the
508 option.</para>
509
510 <para><parameter>mk_add_options
511 MOZ_OBJDIR=@TOPSRCDIR@/../mozilla-build</parameter>: Creates an object
512 directory and specifies to build the package in that directory. If desired,
513 modify the location of the object directory to a directory inside the
514 source tree by removing <quote>../</quote> from the line.</para>
515
516 <para><parameter>--enable-application=suite</parameter>: Identifies the
517 build as a <application>Mozilla</application> suite build.</para>
518
519 <para><parameter>--with-system-zlib --with-system-png
520 --with-system-jpeg</parameter>: Uses the system-installed versions of these
521 packages.</para>
522
523 <para><parameter>--enable-official-branding</parameter>: Uses the official
524 Mozilla logos and icons in the built binaries. Due to license restrictions,
525 you may not distribute binaries created using this option.</para>
526
527 <para><parameter>--enable-default-toolkit=gtk2 --enable-xft
528 --disable-freetype2</parameter>: Use the GTK2 toolkit for graphics
529 rendering and XFT (automatically pulls in the
530 <application>FreeType</application> libraries) for font rendering.</para>
531
532 <para><parameter>--enable-extensions=all</parameter>: Enables all available
533 extensions. If you want, you can disable any or all extensions other than
534 the browser by changing this switch to
535 <option>--enable-extensions="default,-venkman,-inspector,..."</option>.
536 For a short description of the various extensions available with the
537 <application>Mozilla</application> source, see <ulink
538 url="http://linuxfromscratch.org/~tushar/downloads/mozilla-extensions.txt"/>.
539 </para>
540
541 <para><parameter>--enable-crypto</parameter>: Enable the Personal
542 Security Manager to enable SSL connections.</para>
543
544 <para><parameter>--enable-calendar</parameter>: Builds the calendar
545 application. Remove this parameter if you don't wish to build it.</para>
546
547 <para><parameter>--enable-xinerama; --enable-optimize; --enable-reorder;
548 --enable-strip; --enable-cpp-rtti --disable-accessibility; --disable-debug;
549 --disable-tests; --disable-logging; --disable-pedantic;
550 --disable-installer</parameter>: Various options that affect what components
551 are built and some optimization options. You can pick and choose from these
552 options. More information on them, and many other available options, can be
553 found by running <command>./configure --help</command>.</para>
554
555 </sect2>
556
557 <sect2 role="commands">
558 <title>Command Explanations</title>
559
560 <para><command>export MOZILLA_OFFICIAL="1"
561 export BUILD_OFFICIAL="1"</command>: Sets some variables that affect what
562 and how the package is built. These two exports specify a distribution is
563 being built.</para>
564
565 <para><command>make -f client.mk ...</command>: Mozilla products are
566 packaged to allow the use of a configuration file which can be used to
567 pass the configuration settings to the <command>configure</command>
568 command. <command>make</command> uses the <filename>client.mk</filename>
569 file to get initial configuration and setup parameters, then depending on
570 the target parameter (<parameter>build</parameter> or
571 <parameter>install</parameter>), either runs the
572 <command>configure</command> script and compiles the package or installs
573 the package.</para>
574
575 <para><command>./makemake -r</command>: This command is used to recursively
576 create <filename>Makefile</filename>s in the current directory.</para>
577
578 <para><command>make -C ... xpi</command>: This command builds the
579 <application>Enigmail</application>
580 <filename class='extension'>.xpi</filename> file which can be used to
581 install <application>Enigmail</application>.</para>
582
583 <para><command>install .../movemail.rdf ...</command>: This
584 command is used to install a file inadvertently left out of the
585 installation script.</para>
586
587 <!-- Commenting this out as the commands needing these explanations
588 are also commented out
589
590 <para><command>if [ -d /usr/lib/mozilla/plugins ] ... fi</command>: Some
591 applications may have already installed <application>Mozilla</application>
592 plugins. This set of commands moves any existing plugins to the newly
593 created plugin directory, then removes the existing
594 <filename class='directory'>/usr/lib/mozilla</filename> directory.</para>
595
596 <para><command>ln -nsf mozilla-&mozilla-version; ...</command>:
597 <application>Mozilla</application> installs headers and libraries in
598 version specific directories. These commands makes symbolic links so that
599 applications depending on <application>Mozilla</application> (such as
600 <application>OpenOffice</application>, <application>Galeon</application>,
601 etc.) don't need to know which version of <application>Mozilla</application>
602 is installed.</para>
603 -->
604
605 </sect2>
606
607 <sect2 role="configuration">
608 <title>Configuring Mozilla</title>
609
610 <para>No specific configuration is required as long as the
611 <command>mozilla</command> script is in the user's path. If
612 <application>Mozilla</application> is installed in a non-standard location,
613 then make a symlink to the <command>mozilla</command> script in the
614 <filename class="directory">/usr/bin</filename> directory.</para>
615
616 <para>Many applications look for <command>netscape</command> when they need
617 to open a browser. You may make the following symlink for convenience (as
618 the <systemitem class="username">root</systemitem> user).</para>
619
620<screen role="root"><userinput>ln -v -sf mozilla /usr/bin/netscape</userinput></screen>
621
622 <para>For installing various <application>Mozilla</application> plugins,
623 refer to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's
624 PluginDoc Project</ulink>. If you have <xref linkend="jdk"/> already
625 installed, create the following link as the
626 <systemitem class="username">root</systemitem> user to utilize the
627 <application>JAVA</application> plugin: </para>
628
629<screen role="root"><userinput>ln -v -s $JAVA_HOME/jre/plugin/i386/ns7/libjavaplugin_oji.so \
630 /usr/lib/mozilla-&mozilla-version;/plugins</userinput></screen>
631
632 <para>Some packages install Mozilla plugins into the default system-wide
633 directory <filename class='directory'>/usr/lib/mozilla/plugins</filename>.
634 If desired, create symbolic links in the <application>Mozilla</application>
635 plugin directory
636 <filename class='directory'>/usr/lib/mozilla-&mozilla-version;/plugins</filename>
637 to the files in the default plugin directory (you should link to the actual
638 files and not other links). Alternatively, you can move or copy the files
639 in the default plugin directory to the
640 <application>Mozilla</application> plugin directory. An example of creating
641 a symbolic link is shown below. Create the links as the
642 <systemitem class="username">root</systemitem> user:</para>
643
644<screen role="root"><userinput>ln -v -s ../../mozilla/plugins/<replaceable>[plugin.so]</replaceable> \
645 /usr/lib/mozilla-&mozilla-version;/plugins</userinput></screen>
646
647 <para>Along with using the <quote>Preferences</quote> menu to configure
648 <application>Mozilla</application>'s options and preferences to suit
649 individual tastes, finer grain control of many options is only available
650 using a tool not available from the general menu system. To access this
651 tool, you'll need to open a Navigator window and enter
652 <systemitem role='url'>about:config</systemitem> in the
653 address bar. This will display a list of the configuration preferences and
654 information related to each one. You can use the <quote>Filter:</quote> bar
655 to enter search criteria and narrow down the listed items. Changing a
656 preference can be done using two methods. One, if the preference has a
657 boolean value (True/False), simply double-click on the preference to toggle
658 the value and two, for other preferences simply right-click on the desired
659 line, choose <quote>Modify</quote> from the menu and change the value.
660 Creating new preference items is accomplished in the same way, except
661 choose <quote>New</quote> from the menu and provide the desired data into
662 the fields when prompted.</para>
663
664 <tip>
665 <para>There is a multitude of configuration parameters you can tweak to
666 customize <application>Mozilla</application>. A very extensive and
667 up-to-date list of these parameters can be found at <ulink
668 url="http://preferential.mozdev.org/preferences.html"/>.</para>
669 </tip>
670
671 </sect2>
672
673 <sect2 role="content">
674 <title>Contents</title>
675
676 <segmentedlist>
677 <segtitle>Installed Programs</segtitle>
678 <segtitle>Installed Libraries</segtitle>
679 <segtitle>Installed Directories</segtitle>
680
681 <seglistitem>
682 <seg>mozilla and mozilla-config</seg>
683 <seg>Numerous libraries, browser, and email/newsgroup components,
684 plugins, extensions, and helper modules installed in <filename
685 class='directory'>/usr/lib/mozilla-&mozilla-version;</filename></seg>
686 <seg>/usr/include/mozilla-&mozilla-version;,
687 /usr/lib/mozilla-&mozilla-version;, and
688 /usr/share/idl/mozilla-&mozilla-version;</seg>
689 </seglistitem>
690 </segmentedlist>
691
692 <variablelist>
693 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
694 <?dbfo list-presentation="list"?>
695 <?dbhtml list-presentation="table"?>
696
697 <varlistentry id="mozilla-prog">
698 <term><command>mozilla</command></term>
699 <listitem>
700 <para>is a browser/email/newsgroup/calendar/chat client suite. The
701 various components such as the Composer, mail-news client, calendar,
702 IRC chat client and address book can be accessed from the menu after
703 <command>mozilla</command> starts or via command-line switches to
704 the <command>mozilla</command> script. Issue
705 <command>man mozilla</command> for additional information.</para>
706 <indexterm zone="mozilla mozilla-prog">
707 <primary sortas="b-mozilla">mozilla</primary>
708 </indexterm>
709 </listitem>
710 </varlistentry>
711
712 </variablelist>
713
714 </sect2>
715
716</sect1>
Note: See TracBrowser for help on using the repository browser.