OpenSP-1.5.2

Introduction to OpenSP

The OpenSP package contains a C++ library for using SGML/XML files. This is useful for validating, parsing and manipulating SGML and XML documents.

This package is known to build and work properly using an LFS 12.0 platform.

Package Information

OpenSP Dependencies

Required

sgml-common-0.6.3

Optional

libnsl-2.0.0 and xmlto-0.0.28

Editor Notes: https://wiki.linuxfromscratch.org/blfs/wiki/opensp

Installation of OpenSP

Install OpenSP by running the following commands:

sed -i 's/32,/253,/' lib/Syntax.cxx &&
sed -i 's/LITLEN          240 /LITLEN          8092/' \
    unicode/{gensyntax.pl,unicode.syn} &&

./configure --prefix=/usr                              \
            --disable-static                           \
            --disable-doc-build                        \
            --enable-default-catalog=/etc/sgml/catalog \
            --enable-http                              \
            --enable-default-search-path=/usr/share/sgml &&

make pkgdatadir=/usr/share/sgml/OpenSP-1.5.2

To test the results, issue: make check. As many as nine of the 23 tests may fail. Do not be alarmed.

Now, as the root user:

make pkgdatadir=/usr/share/sgml/OpenSP-1.5.2 \
     docdir=/usr/share/doc/OpenSP-1.5.2      \
     install &&

ln -v -sf onsgmls   /usr/bin/nsgmls   &&
ln -v -sf osgmlnorm /usr/bin/sgmlnorm &&
ln -v -sf ospam     /usr/bin/spam     &&
ln -v -sf ospcat    /usr/bin/spcat    &&
ln -v -sf ospent    /usr/bin/spent    &&
ln -v -sf osx       /usr/bin/sx       &&
ln -v -sf osx       /usr/bin/sgml2xml &&
ln -v -sf libosp.so /usr/lib/libsp.so

Command Explanations

sed -i 's/32,/253,/...unicode.syn}: These seds prevent some annoying messages that may otherwise appear while running openjade.

--disable-static: This switch prevents installation of static versions of the libraries.

--enable-http: This switch adds support for HTTP.

--disable-doc-build: This switch prevents the configure script checking if you have xmlto installed. If you have xmlto, you can remove this option.

--enable-default-catalog=/etc/sgml/catalog: This switch sets the path to the centralized catalog.

--enable-default-search-path: This switch sets the default value of SGML_SEARCH_PATH.

--enable-xml-messages: This switch adds support for XML Formatted Messages.

make pkgdatadir=/usr/share/sgml/OpenSP-1.5.2 : This sets the pkgdatadir variable in the Makefile from /usr/share/OpenSP to /usr/share/sgml/OpenSP-1.5.2.

ln -v -sf ...: These commands create the SP equivalents of OpenSP executables and libraries.

Contents

Installed Programs: onsgmls, osgmlnorm, ospam, ospcat, ospent, osx, and the SP equivalent symlinks: nsgmls, sgml2xml, sgmlnorm, spam, spcat, spent, and sx
Installed Library: libosp.so and the SP equivalent symlink: libsp.so
Installed Directories: /usr/include/OpenSP, /usr/share/doc/OpenSP, and /usr/share/sgml/OpenSP-1.5.2

Short Descriptions

onsgmls

is used to process SGML files

osgmlnorm

prints on the standard output a normalized document instance for the SGML document contained in the concatenation of the entities with system identifiers .nf and .fi

ospam

is a markup stream editor

ospcat

prints effective system identifiers found in the catalogs

ospent

provides access to OpenSP's entity manager

osx

is an SGML normalizer or used to convert SGML files to XML files

nsgmls

is a symlink to onsgmls

sgml2xml

is a symlink to osx

sgmlnorm

is a symlink to osgmlnorm

spam

is a symlink to ospam

spcat

is a symlink to ospcat

spent

is a symlink to ospent

sx

is a symlink to osx

libosp.so

contains functions required by the OpenSP programs to parse, validate and manipulate SGML and XML files

libsp.so

is a symlink to libosp.so