other versions
- wheezy 4.1.0.20011224-6
MAKESTRS(1) | General Commands Manual | MAKESTRS(1) |
名前¶
makestrs - 文字列テーブルの C 言語ソースとヘッダを作成する書式¶
makestrs [-f source] [-abioptions ...]説明¶
makestrs コマンドは文字列テーブルの C 言語ソースとヘッダを作成する。 -f source オプションが指定されなければ、 makestrs は標準入力から入力を行う。 C のソースファイルは常に標準出力に書き出される。 makestrs は、ソースファイルで指定されている C のヘッダファイルを出力する。 以下のオプションを指定することができる: -sparcabi, -intelabi, -functionabi, -arrayperabi, -defaultabi -sparcabi は、SPARC Compliance Definition に準拠している SPARC プラットフォーム で使われる(SVR4/Solaris 等)。 -intelabi は、System V Application Binary Interface に準拠している Intel プラッ トフォームで使われる(SVR4 等)。 -earlyR6abi は、ベンダが X11R6公式パッチ11 (またはそれ以前のもの)と X11R6公式パッ チ 12(またはそれ以降のもの)の間でバイナリ互換性を保ちたいと考える場合に、 -intelabi に付け加えて使われる。 -functionabi オプションを指定すると、文字列テーブルに関数 ABI が生成される。性能が 大幅に悪化するので、この機構は使わない方が良い。 -arrayperabi を用いると、文字列ごとに別々の配列が生成される。makestrs にコンパイル オプション -DARRAYPERSTR が付けられていた場合には、これがデフォルトの 動作である(こうなっていることはない)。 -defaultabi を使うと、makestrs が -DARRAYPERSTR オプション付きでコンパイルされてい ても、強制的に「通常の」文字列が生成される。makestrs が -DARRAYPERSTR オプション付きでコンパイルされることはまず無いので、ABI オプションが指 定されていないときは、これがデフォルトの動作である。書式¶
文字列リストファイルの記法を以下に示す([] で括られた要素は省略できる):#prefix <text>
#feature <text>
#externref <text>
#externdef [<text>]
[#ctempl <text>]
#file <filename>
#table <tablename>
[#htempl]
<text>
<text>
[#table <tablename>
<text>
<text>
...
#table <tablename>
...]
[#file <filename>
...]
バグ¶
makestrs は文法エラーに対してあまり寛容ではない。# ディレクティブの後 に空白を必要とすることがあるし、これが混乱の元になることもある。警告メッ セージは出力されない。関連項目¶
SPARC Compliance Definition 2.2., SPARC International Inc., 535 Middlefield Road, Suite 210, Menlo Park, CA 94025 System V Application Binary Interface, Third Edition, ISBN 0-13-100439-5 UNIX Press, PTR Prentice Hall, 113 Sylvan Avenue, Englewood Cliffs, NJ 07632 System V Application Binary Interface, Third Edition, Intel386 Architecture Processor Supplement ISBN 0-13-104670-5 UNIX Press, PTR Prentice Hall, 113 Sylvan Avenue, Englewood Cliffs, NJ 07632 System V Application Binary Interface, Third Edition, SPARC Architecture Processor Supplement ISBN 0-13-104696-9 UNIX Press, PTR Prentice Hall, 113 Sylvan Avenue, Englewood Cliffs, NJ 07632Release 6.5 | X Version 11 |