makestrs(1)

makestrs1

Makes string table c source and header(s)

Usage

makestrs [-f source] [-i includedir] [-abioptions ...]

The syntax for string-list file is (items in square brackets are optional):

The #ctmpl directive determines the name of the file used as a template for the C source file that is generated

Overview

The makestrs command creates string table C source files and headers. If -f source is not specified makestrs will read from stdin. The C source file is always written to stdout. makestrs creates one or more C header files as specified in the source file. The following options may be specified: -sparcabi, -intelabi, -functionabi, -arrayperabi, and -defaultabi.

-sparcabi is used on SPARC platforms conforming to the SPARC Compliance Definition, i.e. SVR4/Solaris.

-intelabi is used on Intel platforms conforming to the System V Application Binary Interface, i.e. SVR4.

-earlyR6abi may be used in addition to -intelabi for situations where the vendor wishes to maintain binary compatibility between X11R6 public-patch 11 (and earlier) and X11R6 public-patch 12 (and later).

-functionabi generates a functional abi to the string table. This mechanism imposes a severe performance penalty and it's recommended that you not use it.

-arrayperabi results in a separate array for each string. This is the default behavior if makestrs was compiled with -DARRAYPERSTR (it almost never is).

-defaultabi forces the generation of the "normal" string table even if makestrs was compiled with -DARRAYPERSTR. Since makestrs is almost never compiled with -DARRAYPERSTR this is the default behavior if no abioptions are specified.

-i includedir forces the reading of templates from the includedir instead of the local directory. This is useful to have separate source and build directories.

Releases

3 releases since Debian 4.0 (Etch); the text changed 2 times.

  1. 4.0
  2. 5.0
  3. 6.0

Bugs

makestrs is not very forgiving of syntax errors. Sometimes you need a trailing space after # directives, other times they will mess you up. No warning messages are emitted.

From libxt-dev 1:1.0.7-1+squeeze1 in Debian 6.0 (Squeeze). Parsed by carta from the page's man source.