[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
(toppers-users 846) Re: TOPPERS(JSP-1.3)についての問い合わせ
- To: <toppers-users at ertl jp>
- From: "Takayuki WAKABAYASHI" <takayuki at ertl jp>
- Date: Mon, 2 Jun 2003 18:51:54 +0900
(株)リコー 竹内さん
豊橋技術科学大学の若林です。
まず最初に、大変申し訳ないですが toppers-usersのメーリングリストは、ウィ
ルス被害を防ぐため、添付ファイルを切り離すようになっています。今回コン
フィギュレーションファイルを添付していただいたようですが、ファイルは配信
されないことをご了承ください。
質問2に関してですが、
> sample.h中にUSE_SEMを定義しても、#ifdef USE_SEM〜#endifまでの内容が有
> 効にならないのですが。
> このようなやり方は正しいのでしょうか。誤りなのでしょうか。
コンフィギュレーションファイルに条件コンパイルを仕掛けるのは正しいやり方
だと思います。TOPPERS/JSPのサンプルプログラム(sample1.cfg)のCPU例外ハン
ドラ定義も条件コンパイルを使用しています。
ただし、現在のTOPPERS/JSP 1.3のコンフィギュレータは、内部でプリプロセッ
サ処理を行いません。またプリプロセッサを呼び出すこともしません。サンプル
プログラムでは、Makefile中に「コンフィギュレータに渡す前にC言語プリプロ
セッサを通過させる処理」が記述されています。
コンフィギュレーションファイルで条件コンパイルを行うには、次の条件が必要
です。
1. 条件コンパイルのトリガとなる定義を含むファイルがある
2. コンフィギュレーションファイル中にそのファイルを
#include で引っ張ってくる行がある (INCLUDE文ではダメです)
3. コンフィギュレーションをかける前にC言語プリプロセッサを起動している
可能性としては項目2.でしょうか。これだとすれば、sample.cfgに#include
"sample.h" という行を追加すればOKだと思います (ただしsample.hには静的API
に関係しない定義を読み込ませないようにする仕組みが必要です)。
以上 参考になれば幸いです。
--------
豊橋技術科学大学 情報工学系 組込みリアルタイムシステム研究室
若林 隆行 (takayuki at ertl jp)