source: general/genlib/js38.xml@ 0e45aee

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 0e45aee was 0e45aee, checked in by DJ Lucas <dj@…>, 7 years ago

tags

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

  • Property mode set to 100644
File size: 6.9 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 "896 MB">
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 &lfs81_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-2.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-2.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
129./configure --prefix=/usr \
130 --with-intl-api \
131 --with-system-zlib \
132 --with-system-ffi \
133 --with-system-nspr \
134 --with-system-icu \
135 --enable-threadsafe \
136 --enable-readline &amp;&amp;
137make</userinput></screen>
138
139 <para>
140 This package does not come with a working test suite.
141 </para>
142
143 <para>
144 Now, as the <systemitem class="username">root</systemitem> user:
145 </para>
146
147<screen role="root"><userinput>make install &amp;&amp;
148pushd /usr/include/mozjs-38 &amp;&amp;
149for link in `find . -type l`; do
150 header=`readlink $link`
151 rm -f $link
152 cp -pv $header $link
153 chmod 644 $link
154done &amp;&amp;
155popd</userinput></screen>
156
157 </sect2>
158
159 <!--Optional section-->
160 <sect2 role="commands">
161 <title>Command Explanations</title>
162
163 <para>
164 <command>autoconf213</command>: This command regenerates the configure
165 script with the changes from the patch.
166 </para>
167
168 <para>
169 <parameter>--with-*</parameter>: These parameters allow the build system
170 to use system versions of the above libriares. These are required for
171 stability.
172 </para>
173
174 <para>
175 <parameter>--enable-readline</parameter>: This switch enables Readline
176 support in the JS shell.
177 </para>
178
179 <para>
180 <parameter>--enable-threadsafe</parameter>: This switch enables support
181 for multiple threads at one time. This increases performance as well as
182 stability.
183 </para>
184
185 <para>
186 <command>for link in</command>...: This command replaces links to the
187 build directory, with files copied from the build directory.
188 </para>
189 </sect2>
190
191 <sect2 role="content">
192 <title>Contents</title>
193
194 <segmentedlist>
195 <segtitle>Installed Programs</segtitle>
196 <segtitle>Installed Libraries)</segtitle>
197 <segtitle>Installed Directories</segtitle>
198
199 <seglistitem>
200 <seg>
201 js38 and js38-config
202 </seg>
203 <!-- Yes, the static library is required. -->
204 <seg>
205 libmozjs-38.so and libjs_static.ajs
206 </seg>
207 <seg>
208 /usr/include/mozjs-38
209 </seg>
210 </seglistitem>
211 </segmentedlist>
212
213 <variablelist>
214 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
215 <?dbfo list-presentation="list"?>
216 <?dbhtml list-presentation="table"?>
217
218 <varlistentry id="js3-js38">
219 <term><command>js38</command></term>
220 <listitem>
221 <para>
222 provides a command line interface to the
223 <application>JavaScript</application> engine.
224 </para>
225 <indexterm zone="js38 js38">
226 <primary sortas="b-js38">js38</primary>
227 </indexterm>
228 </listitem>
229 </varlistentry>
230
231 <varlistentry id="js38-config">
232 <term><command>js38-config</command></term>
233 <listitem>
234 <para>
235 is used to find the JS compiler and linker flags.
236 </para>
237 <indexterm zone="js38 js38-config">
238 <primary sortas="b-js38-config">js38-config</primary>
239 </indexterm>
240 </listitem>
241 </varlistentry>
242
243 <varlistentry id="libmozjs-38">
244 <term><filename class="libraryfile">libmozjs-38.so</filename></term>
245 <listitem>
246 <para>
247 contains the Mozilla JavaScript API functions.
248 </para>
249 <indexterm zone="js38 libmozjs-38">
250 <primary sortas="c-libmozjs38">libmozjs-38.so</primary>
251 </indexterm>
252 </listitem>
253 </varlistentry>
254 </variablelist>
255 </sect2>
256</sect1>
Note: See TracBrowser for help on using the repository browser.