포럼: Developers (Thread #956)

hos4cfgの使い方 (2002-08-14 10:53 by gutskun #1707)

こんにちはgutskunです。

hos4cfgの使い方が良く分からないのですが、
sample/sh2gcc/makefileを見て

cp system.cfg system_tmp.c
gcc -E system_tmp.c -o system.i
hos4cfg system.i

という手順と思ったのですが、何か他に注意する
点等ありましたら教えて下さい。

RE: hos4cfgの使い方 (2002-08-14 11:40 by m-arai #1708)

特に注意する点などは無いとは思うんですが、何か問題
ありましたか?

>cp system.cfg system_tmp.c
>gcc -E system_tmp.c -o system.i
>hos4cfg system.i

敢えて書くなら、/**/コメント処理とか、私は#include
も使ってますが、その程度ならこれで構わないのです
けど、ターゲットにより自動的に定義されるシンボル
なんかを期待した記述を行う場合もありえるので、

gcc -E system_tmp.c -o system.i



$(CC) (CFLAGSから-cを取り除いたもの) -E system_tmp.c -o system.i

という風にした方が良いかもしれないというのは
あります。

また、中間ファイルでなくパイプを使うという方法
もあります。その辺はh-iwamotoさんにより提供された
ものがPatchに入っているので、そっちを読めば大抵の
ことは分かると思います。
Reply to #1707

RE: hos4cfgの使い方 (2002-08-14 12:13 by gutskun #1709)

> 特に注意する点などは無いとは思うんですが、何か問題
> ありましたか?

hos4cfgの知識が皆無なので、オプション指定
等があれば教えて欲しいという事でした。

hcfgh8hと同様に一発で出来ると思っていたので、
system.iは何処から持って来るの?
という処も分からない状態でした。

ドキュメントも探してみたのですが、見あたら
なくてmakefileを見てなんとなく使い方が
分かったという次第です。



今までの経緯が分かっていないので、また
ちんぷんかんぷんな質問をするかもしれませんが
宜しくお願いします。
Reply to #1708

RE: hos4cfgの使い方 (2002-08-14 14:12 by ryuz #1712)

 お世話になります。Ryuzです。

 コンフィギュレーターに付いては、ドキュメントが
遅れており、大変ご迷惑をおかけいたしました。

 流れと致しましては、ITRON4.0の仕様書どおり
system.cfg を Cプリプロセッサで処理した後、
 hos4cfg にて kernel_id.h と kernel_cfg.c を
生成します。

 h-iwamoto様ご提供のパッチにより若干オプションが
増えてはおりますが、基本的には引数として入力
ファイル名を渡すのみです。
 確か、最新版では、デフォルトで system.i が標準
にして頂いていたと思います。

 HOS独自の静的APIもあるのでマニュアルが必要ですね。

 早急に準備したいと思います。
Reply to #1709

RE: hos4cfgの使い方 (2002-08-14 15:15 by ryuz #1714)

 お世話になります。Ryuzです。

 使い方の説明ではないのですが、HOS独自の静的APIの
説明を /document/hos4cfg.txt として追加しました。

 よろしければ参照頂ければ幸いです。
Reply to #1712

RE: hos4cfgの使い方 (2002-08-14 15:44 by m-arai #1719)

>gcc環境ですと、freebsd.mak がありますので

freebsd.makはgcc環境用ではなく、FreeBSD環境専用
です。

↓このへん激しく依存。
.include <bsd.prog.mk>

他のBSD族でもmake出来るかどうか分かりません。
Reply to #1714

RE: hos4cfgの使い方 (2002-08-14 16:06 by m-arai #1721)

なので、gcc用のmakefileをgcc.makとして上げました。
FreeBSDのmakeとGNU make 3.79.1で確認しました。
Reply to #1719

RE: hos4cfgの使い方 (2002-08-14 16:13 by m-arai #1722)

書き忘れてました。
hos4cfg.txtの該当部分も修正しました。
freebsd.mak -> gcc.mak
Reply to #1721

RE: hos4cfgの使い方 (2002-08-14 16:53 by ryuz #1723)

 有難うございます。

 BCC55 用も makefile でなく bcc55.mak として
追加しました。
 ついでにかなり修正忘れていたバグも取りました (^^;;
Reply to #1722

RE: hos4cfgの使い方 (2002-08-14 15:45 by gutskun #1720)

早速ドキュメントをアップして頂いて
ありがとうございます。

お手数をかけました。
Reply to #1714

RE: hos4cfgの使い方 (2009-04-19 18:51 by n-okada #43260)

おかだです。

ちょっと古いスレッドに返信にしました(同じカテゴリなので)。

hos4cfg の前段で行うCPP(C Preprocessor)処理ですが、
mcpp というツールを使っても実現できますね。

http://sourceforge.net/project/showfiles.php?group_id=165953

Windows版で例にとりますと、mcpp.exe を \windows など path の通ったところにコピーしておき、

 mcpp system.cfg > sysmte.i

とすることで、従来の gcc -E ... と同じことになるみたいです。
今回移植している 78K0R の無償版ccには、cppのみ処理という機能がないようなので、
このmcppのお世話になることにしたいと思います。

以上、情報展開まで。
Reply to #1707