OpenSP-1.5.2

#### Beyond Linux® From Scratch (systemd Edition) - Version r13.0-475

### Chapter 48. Standard Generalized Markup Language (SGML)

- Prev

  docbook-4.5-dtd

- Next

  OpenJade-1.3.2

- Up
- Home

# 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.

### Note

Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.

### Package Information

- Download (HTTP): https://downloads.sourceforge.net/openjade/OpenSP-1.5.2.tar.gz

- Download MD5 sum: 670b223c5d12cee40c9137be86b6c39b

- Download size: 1.5 MB

- Estimated disk space required: 32 MB

- Estimated build time: 1.0 SBU

### Additional Downloads

- Required patch: https://www.linuxfromscratch.org/patches/blfs/svn/OpenSP-1.5.2-gcc14-1.patch

### OpenSP Dependencies

#### Required

sgml-common-0.6.3

#### Optional

libnsl-2.0.1 and xmlto-0.0.29

## Installation of OpenSP

Install OpenSP by running the following commands:

    patch -Np1 -i ../OpenSP-1.5.2-gcc14-1.patch              &&
    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. The `catalog-2`, `af-7`, `af-8`, `af-9`, `af-10`, and `af-11` tests are known to fail.

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`

- Prev

  docbook-4.5-dtd

- Next

  OpenJade-1.3.2

- Up
- Home