diff --git a/general/genlib/genlib.xml b/general/genlib/genlib.xml
index 136c408b93..11a7c0c941 100644
--- a/general/genlib/genlib.xml
+++ b/general/genlib/genlib.xml
@@ -73,6 +73,7 @@ $Date$
+
diff --git a/general/genlib/js68.xml b/general/genlib/js68.xml
new file mode 100644
index 0000000000..822042d0dd
--- /dev/null
+++ b/general/genlib/js68.xml
@@ -0,0 +1,275 @@
+
+
+ %general-entities;
+
+
+
+
+
+
+
+]>
+
+
+
+
+
+ $LastChangedBy$
+ $Date$
+
+
+ JS-&JS68-version;
+
+
+ js68
+
+
+
+ Introduction to JS
+
+
+ JS is Mozilla's JavaScript engine
+ written in C.
+
+
+ Package Information
+
+
+
+ Download (HTTP):
+
+
+
+
+ Download (FTP):
+
+
+
+
+ Download MD5 sum: &js68-md5sum;
+
+
+
+
+ Download size: &js68-size;
+
+
+
+
+ Estimated disk space required: &js68-buildsize;
+
+
+
+
+ Estimated build time: &js68-time;
+
+
+
+
+ Additional Downloads
+
+
+
+ Required patch:
+
+
+
+
+
+ JS68 Dependencies
+
+ Required
+
+ ,
+ ,
+ ,
+ and
+
+
+
+ Optional
+
+ (with Clang) and
+
+
+
+
+ User Notes:
+
+
+
+
+ Installation of JS
+
+
+ If you are upgrading JS68 from a previously installed old version,
+ save all work and exit your GNOME Session if you have one running.
+ Replacing the JS68 binary will cause the GNOME Shell to crash and return
+ you to your display manager or TTY. After installing the new version,
+ reinstall . Polkit is unaffected.
+
+
+
+ First, apply a patch so we can run the shipped build scripts with
+ Python 3, instead of the EOL'ed Python 2:
+
+
+patch -Np1 -i ../js68-&JS68-version;-python_3-1.patch
+
+
+ Install JS by running the following
+ commands:
+
+
+ &shell-env;
+
+sed '21,+4d' -i js/moz.configure &&
+
+mkdir mozjs-build &&
+cd mozjs-build &&
+
+CC=gcc CXX=g++ LLVM_OBJDUMP=/bin/false \
+../js/src/configure --prefix=/usr \
+ --with-intl-api \
+ --with-system-zlib \
+ --with-system-icu \
+ --disable-jemalloc \
+ --disable-debug-symbols \
+ --enable-readline \
+ --enable-unaligned-private-values&&
+make
+
+
+ This package does not come with a working test suite.
+
+
+
+ Now, as the root user:
+
+
+make install
+
+
+
+
+ Command Explanations
+
+
+ sed '21,+4d' js/moz.configure: The building system
+ searches for rustc and cargo but
+ doesn't actually use them. Remove the reference to them so we can
+ build JS68 without installed.
+
+
+
+ CC=gcc CXX=g++: Upstream now prefers
+ clang, override it like other Mozilla
+ packages in BLFS book.
+
+
+
+ LLVM_OBJDUMP=/bin/false: The building system searches
+ for llvm-objdump but doesn't actually use it.
+ Override it so we can build JS68 without
+ installed.
+
+
+
+ --with-*: These parameters allow the build system
+ to use system versions of the above libriares. These are required for
+ stability.
+
+
+
+ --enable-readline: This switch enables Readline
+ support in the JS shell.
+
+
+
+ --disable-jemalloc: This switch disables the
+ internal memory allocator used in JS68. jemalloc causes a conflict with glibc.
+
+
+
+ --disable-debug-symbols: Don't generate debug
+ symbols since they are very large and most users won't need it. Remove
+ it if you want to debug JS68.
+
+
+
+ --enable-unaligned-private-values: This switch
+ allows the code using JS68 not to align all pointers in the same way
+ JS68 does. requires JS68 to be built with this
+ switch.
+
+
+
+
+
+ Contents
+
+
+ Installed Programs
+ Installed Libraries
+ Installed Directories
+
+
+
+ js68 and js68-config
+
+
+ libmozjs-68.so and libjs_static.ajs
+
+
+ /usr/include/mozjs-68
+
+
+
+
+
+ Short Descriptions
+
+
+
+
+ js68
+
+
+ provides a command line interface to the
+ JavaScript engine.
+
+
+ js68
+
+
+
+
+
+ js68-config
+
+
+ is used to find the JS compiler and linker flags.
+
+
+ js68-config
+
+
+
+
+
+ libmozjs-68.so
+
+
+ contains the Mozilla JavaScript API functions.
+
+
+ libmozjs-68.so
+
+
+
+
+
+
diff --git a/packages.ent b/packages.ent
index 3b74f0360f..bd73304fbe 100644
--- a/packages.ent
+++ b/packages.ent
@@ -116,6 +116,7 @@
+