Changes between Initial Version and Version 1 of tecsgen


Ignore:
Timestamp:
Jan 16, 2016, 10:31:43 PM (8 years ago)
Author:
okuma-top
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • tecsgen

    v1 v1  
     1tecsgen コマンドリファレンス
     2
     3《名前》
     4
     5  tecsgen  -- TECS ジェネレータ
     6
     7《使用方法》
     8
     9 % tecsgen [OPTION] CDL-File
     10
     11《説明》
     12
     13TECS ジェネレータ tecsgen は、TECS コンポーネント記述 (TECS CDL) ファ
     14イルを入力として、TECS のインタフェースコードやセルの記憶域を定義する
     15コードを生成します.
     16
     17以下のオプションを指定できます.
     18
     19    -D, --define=def
     20        import_C でヘッダファイルを取込む際の C のプリプロセッサに与え
     21        る define を定義します.ここで指定されたものは tecsgen の出力
     22        Makefile.templ のコンパイルコマンドの引数に引き継がれます.
     23
     24    -G, --generate-region=path
     25        コード生成するリージョンを限定します.指定されたリージョンのみ
     26        コード生成されます.複数のリージョンを指定することができます.
     27        コード生成するリージョンからコード生成しないリージョンへの結合
     28        は、エラーとなります.
     29
     30    -I, --improt-path=path
     31        import で取込む CDL ファイルのパス、および import_C でヘッダファ
     32        イルを取込む際に C のプリプロセッサに与える include パスを指
     33        定します.
     34        tecsgen の引数で指定された CDL ファイルを取込む際にも、このオ
     35        プションで指定されたパスをサーチします.
     36        ここで指定されたものは tecsgen の出力 Makefile.templ のコンパ
     37        イルコマンドの引数に引き継がれます.
     38
     39    -L, --library-path=path
     40        (obsolete) ruby のライブラリパスを指定します.環境変数 RUBYLIB
     41        でも指定できます.tecsgen/tecslib へのパスが指定される必要が
     42        あります.
     43        tecsgen.rb のパスから tecsgen/tecslib へのパスを求めるため、通
     44        常このオプションを指定する必要はなくなりました (V1.2.1.4).
     45        TECS ジェネレータに付属していないプラグインを呼び出す場合には、
     46        このオプションでプラグインの所在を指定する必要があります(Ruby
     47        1.8 では不要)。
     48
     49    -R, --RAM-initializer            generate RAM initializer
     50        RAM の初期値を設定するための初期化コードが生成されます.本オプ
     51        ションが指定された場合 RAM 領域は未初期化変数として出力される
     52        ため、初期化コードを実行する必要があります.初期化コード
     53        INITIALIZE_TECS() (global_tecsgen.h にマクロ定義) を呼び出
     54        すことにより初期化されます.
     55        RAM only オプション -r が指定された場合、本オプションは無視さ
     56        れます.
     57
     58    -U, --unoptimize
     59        最適化を無効にします.
     60
     61    -c, --cpp=cpp_cmd
     62
     63        C プリプロセッサコマンドを指定します.デフォルトでは
     64        'gcc -E -D TECSGEN' です.
     65        環境変数 TECS_CPP により指定することができます.
     66
     67    -d, --dryrun
     68        処理を実行しますがインタフェースコードは生成されません.TECS
     69        コンポーネント記述の文法誤りをチェックすることができます.
     70
     71    -f, --force-overwrite
     72        出力を強制上書きします.デフォルトでは、内容に変化のあった出力
     73        ファイルのみ更新します.
     74
     75    -g, --gen=dir
     76        インタフェースコードなどを生成するディレクトリを指定します.デ
     77        フォルトでは、カレントディレクトリの下の 'gen' ディレクトリに
     78        出力されます.
     79
     80    -i, --idx_is_id
     81        すべての celltype で指定子 idx_is_id が指定されたものとして扱
     82        います.
     83
     84    -k, --kcode=code
     85        文字コードを指定します.code は euc, sjis, none, utf8 のいずれ
     86        かを指定可能です.
     87        通常 LANG 環境変数で指定します。
     88
     89    -o, --old-mode
     90        古い TECS 仕様のコードを生成します.
     91        古い仕様では int8_t -> tecs_int8 などに変換されました.
     92
     93    -r, --ram
     94        RAM のみで動作するコードを生成します.デフォルトでは attribute
     95        など ROM (const)領域に配置するコードが生成されます.
     96
     97    -s, --show-tree
     98        パースツリーを表示します.
     99        tecsgen のデバッグに使用します.
     100
     101    -t, --generator-debug
     102        tecsgen のデバッグする場合に使用します.パーサーが取込んだトー
     103        クンを逐次表示します.コード生成段階で内部エラーが発生した場合
     104        には、スタックトレースを表示します.
     105        factory はコード生成時にエラーが発生することがあります.その場
     106        合、どのfactory でエラーが発生したかを知るための情報が表示され
     107        ます.
     108
     109    -u, --unique-id
     110        idx_is_id により付与される ID (整数)は、デフォルトでは各セル
     111        タイプごとに 1 から始まる番号が割付けられます.本オプションが
     112        与えられた場合、すべてのセルで異なる ID が割付けられます.
     113
     114    -v, --verbose
     115        いくらかの情報を出力します.
     116        ・プロトタイプ宣言されているが、存在しないセル
     117        ・ロードするプラグイン
     118        ・through により実行される ruby スクリプト
     119        ・C プリプロセッサコマンド
     120        ・セルタイプごとの実施された最適化
     121
     122    -y, --yydebug
     123        tecsgen のパーサー部をデバッグするために使用します.bnf.tab.rb
     124        のかわりに bnf-deb.tab.rb が使用されます.
     125
     126    --no-banner
     127        バナーを表示しません.
     128
     129    --version
     130        tecsgen の version を表示します.
     131
     132    --generate-all-template
     133        すべてのセルタイプのテンプレートを生成します.
     134        デフォルトでは tecsgen は、セルが一つも生成されないセルタイプ、
     135        再利用されているセルタイプ(import時、山括弧文字列 <file.cdl>
     136        指定されている)のテンプレートを生成しません.
     137
     138    --generate-no-template
     139            テンプレートを生成しません(セルタイプ、 Makefile とも).
     140        --generate-all-template と同時指定された場合、このオプションが
     141        優先されます.
     142
     143    --no-default-import-path
     144        デフォルトで tecsgen/tecs へのパスを -I に加えます.このオプショ
     145        ンを指定すると、その -I の指定を抑止します.
     146
     147    --c-suffix=c                 C program suffix (default: c)
     148        生成する C 言語のファイルの拡張子を指定します.C++ コンパイラ
     149        を使用する場合には C++ の拡張子を指定します.
     150
     151    --h-suffix=h                 C program header suffix (default: h)
     152        生成する C 言語のヘッダファイルの拡張子を指定します.
     153
     154以下のものが出力されます.
     155
     156・ヘッダファイル (global_tecsgen.h, CELLTYPE_tecsgen.h, CELLTYPE_factory.h)
     157・セルタイプtecsgenコード  (CELLTYPE_tecsgen.c)
     158・セルタイプコードテンプレート (CELLTYPE_templ.c, CELLTYPE_inline_temple.h)
     159・Makefile  (Makefile.templ, Makefile.tecsgen, Makefile.depend)
     160・中間ファイル
     161   ・プラグインにより生成されるコンポーネント記述
     162   ・取込まれる C のヘッダファイル
     163
     164出力物の使用方法については、TECS 仕様書 (draft版) の付録を参照してください.
     165
     166セルタイプコードテンプレートは、以下のように出力されます。
     167
     168・ 山括弧 <> で囲まれて import された CDL ファイルで定義されているセル
     169  タイプのテンプレートファイルは出力されません
     170  (--generate-all-template を参照)
     171・セルタイプの受け口がすべて inline である場合、テンプレートヘッダファ
     172  イルのみ出力されます.Makefilte.tecsgen で TECS_COBJS にも含まれませ
     173  ん.
     174・セルタイプの受け口がすべて inline であってもアクティブである場合、C
     175  言語テンプレートファイルも出力されます.Makefilte.tecsgen で
     176  TECS_COBJS にも含まれます.
     177
     178《終了ステータス》
     179
     180   0 … 正常終了
     181   1 … エラー
     182
     183エラーには、CDL ファイルの文法誤りの他、入力ファイルの読み込みや出力ファ
     184イルの作成の失敗があります.警告 (warning) の発生は、エラーとはみなさ
     185れません.
     186
     187------
     188[TECS リファレンスマニュアル [wiki:  トップページ]]・