source: general/genlib/js38.xml@ 9a7de57

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 9a7de57 was 9a7de57, checked in by Douglas R. Reno <renodr@…>, 7 years ago

Add js38 to the book
Bump the tag entities in the Template

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

  • Property mode set to 100644
File size: 6.8 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY js38-download-http "https://people.mozilla.org/~sstangl/mozjs-&JS38-version;.rc0.tar.bz2">
8 <!ENTITY js38-download-ftp " ">
9 <!ENTITY js38-md5sum "cb602e21f5fc798b88163a3aa4e03e0a">
10 <!ENTITY js38-size "24 MB">
11 <!ENTITY js38-buildsize "1.7 GB">
12 <!ENTITY js38-time "3.3 SBU">
13]>
14
15<sect1 id="js38" xreflabel="js38-&JS38-version;">
16 <?dbhtml filename="js38.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>JS-&JS38-version;</title>
24
25 <indexterm zone="js38">
26 <primary sortas="a-js38">js38</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to JS</title>
31
32 <para>
33 <application>JS</application> is Mozilla's JavaScript engine
34 written in C.
35 </para>
36
37 &lfs80_checked;
38
39 <bridgehead renderas="sect3">Package Information</bridgehead>
40 <itemizedlist spacing="compact">
41 <listitem>
42 <para>
43 Download (HTTP): <ulink url="&js38-download-http;"/>
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download (FTP): <ulink url="&js38-download-ftp;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download MD5 sum: &js38-md5sum;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download size: &js38-size;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Estimated disk space required: &js38-buildsize;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated build time: &js38-time;
69 </para>
70 </listitem>
71 </itemizedlist>
72
73 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
74 <itemizedlist spacing="compact">
75 <listitem>
76 <para>
77 Required patch:
78 <ulink url="&patch-root;/js38-&JS38-version;-upstream_fixes-1.patch"/>
79 </para>
80 </listitem>
81 </itemizedlist>
82
83 <bridgehead renderas="sect3">JS38 Dependencies</bridgehead>
84
85 <bridgehead renderas="sect4">Required</bridgehead>
86 <para role="required">
87 <xref linkend="autoconf213"/>,
88 <xref linkend="icu"/>,
89 <xref linkend="libffi"/>,
90 <xref linkend="nspr"/>,
91 <xref linkend="python2"/>, and
92 <xref linkend="zip"/>
93 </para>
94
95 <bridgehead renderas="sect4">Optional</bridgehead>
96 <para role="optional">
97 <xref linkend="doxygen"/>
98 </para>
99
100 <para condition="html" role="usernotes">
101 User Notes: <ulink url="&blfs-wiki;/js38"/>
102 </para>
103 </sect2>
104
105 <sect2 role="installation">
106 <title>Installation of JS</title>
107
108 <warning>
109 <para>The tarball extracts to mozjs-38.0.0, rather than what is
110 listed in the download section.</para>
111 </warning>
112
113 <para>
114 First, apply a patch to fix the build and to prevent segmentation
115 faults.
116 </para>
117
118<screen><userinput remap="pre">patch -Np1 -i ../js38-&JS38-version;-upstream_fixes-1.patch</userinput></screen>
119
120 <para>
121 Install <application>JS</application> by running the following
122 commands:
123 </para>
124
125<!-- Spaces are significant in <screen> sections -->
126<screen><userinput>cd js/src &amp;&amp;
127autoconf2.13 &amp;&amp;
128
129sed -i 's|\^\[:space:\]|^\[\[:space:\]\]|g' configure &amp;&amp;
130./configure --prefix=/usr \
131 --with-intl-api \
132 --with-system-zlib \
133 --with-system-ffi \
134 --with-system-nspr \
135 --with-system-icu \
136 --enable-threadsafe \
137 --enable-readline &amp;&amp;
138make</userinput></screen>
139
140 <para>
141 This package does not come with a working test suite.
142 </para>
143
144 <para>
145 Now, as the <systemitem class="username">root</systemitem> user:
146 </para>
147
148<screen role="root"><userinput>make install</userinput></screen>
149 </sect2>
150
151 <!--Optional section-->
152 <sect2 role="commands">
153 <title>Command Explanations</title>
154
155 <para>
156 <command>autoconf213</command>: This command regenerates the configure
157 script with the changes from the patch.
158 </para>
159
160 <para>
161 <command>sed -i ... configure</command>: This command allows the configure
162 script to function with <application>sed</application> 4.4.
163 </para>
164
165 <para>
166 <parameter>--with-*</parameter>: These parameters allow the build system
167 to use system versions of the above libriares. These are required for
168 stability.
169 </para>
170
171 <para>
172 <parameter>--enable-readline</parameter>: This switch enables Readline
173 support in the JS shell.
174 </para>
175
176 <para>
177 <parameter>--enable-threadsafe</parameter>: This switch enables support
178 for multiple threads at one time. This increases performance as well as
179 stability.
180 </para>
181
182 </sect2>
183
184 <sect2 role="content">
185 <title>Contents</title>
186
187 <segmentedlist>
188 <segtitle>Installed Programs</segtitle>
189 <segtitle>Installed Libraries)</segtitle>
190 <segtitle>Installed Directories</segtitle>
191
192 <seglistitem>
193 <seg>
194 js38 and js38-config
195 </seg>
196 <!-- Yes, the static library is required. -->
197 <seg>
198 libmozjs-38.so and libjs_static.ajs
199 </seg>
200 <seg>
201 /usr/include/mozjs-38
202 </seg>
203 </seglistitem>
204 </segmentedlist>
205
206 <variablelist>
207 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
208 <?dbfo list-presentation="list"?>
209 <?dbhtml list-presentation="table"?>
210
211 <varlistentry id="js3-js38">
212 <term><command>js38</command></term>
213 <listitem>
214 <para>
215 provides a command line interface to the
216 <application>JavaScript</application> engine.
217 </para>
218 <indexterm zone="js38 js38">
219 <primary sortas="b-js38">js38</primary>
220 </indexterm>
221 </listitem>
222 </varlistentry>
223
224 <varlistentry id="js38-config">
225 <term><command>js38-config</command></term>
226 <listitem>
227 <para>
228 is used to find the JS compiler and linker flags.
229 </para>
230 <indexterm zone="js38 js38-config">
231 <primary sortas="b-js38-config">js38-config</primary>
232 </indexterm>
233 </listitem>
234 </varlistentry>
235
236 <varlistentry id="libmozjs-38">
237 <term><filename class="libraryfile">libmozjs-38.so</filename></term>
238 <listitem>
239 <para>
240 contains the Mozilla JavaScript API functions.
241 </para>
242 <indexterm zone="js38 libmozjs-38">
243 <primary sortas="c-libmozjs38">libmozjs-38.so</primary>
244 </indexterm>
245 </listitem>
246 </varlistentry>
247 </variablelist>
248 </sect2>
249</sect1>
Note: See TracBrowser for help on using the repository browser.