初期値のみ異なる ROMイメージの作成方法について教えてください

環境: CS+
CPU: RL78/G13

この環境で、作業していますが、仕様の異なるROMイメージを作成する必要があります。
違いは、初期値のみで、

仕向けA:  RunMode=1, 仕向けB: RunMode=2, 仕向けC: RunMode=3

のような相違のみとなります。CS+のプロジェクトをコピーしても作成できますが、ソース管理上、一つのプロジェクトで管理したいと考えています。
サブプロジェクトを作成する方法も使ってみましたが、これだけの違いにしては手間が大きく困っています。

なお、相違箇所については、コンパイルオプション(条件コンパイル)のみで対応できるので、ソースも同一となります。

良い方法がありましたら、お願いします。

Parents
  • KatoNaganoさん、こんにちは。NoMaYです。

    これはビルドモードを活用してはどうだろか、と咄嗟に思いました。

    (1) DefaultBuidをBuild_RunMode_1にリネームする
    (2) Build_RunMode_1のビルドモードをBuild_RunMode_2とBuild_RunMode_3へコピーする
    (3) Build_RunMode_2とBuild_RunMode_3のマクロ定義を変更する
    (4) バッチビルドでBuild_RunMode_1とBuild_RunMode_2とBuild_RunMode_3を一括でビルドする
    (5) 後でマクロ定義以外の部分を3者で共通に変更した時は、ビルド時に生成される○○○.rcpeをスクリプトでビルドモード毎に切り出して、ファイル比較ツールで内容を比較/チェックすると、変更漏れ防止の比較的簡単な処置として使えそうな気がします。(mtpjファイルは、ファイル内部構造が複雑過ぎて、とてもそういったことは出来ないです。) あるいは、ビルドオプション生成機能でも、何かそういった活用方法があるかもしれません。

  • NoMayさん、こちらの方法で使えるようです。

    ゴミの件は、設定変更するとビルドしてないのに、中間ファイル(?)が作成されることがあるようで、これがゴミとなっていました。(設定が変わるので、クリーンでは消えない)
    設定が確定した時点で、余分なファイル削除での対応

Reply
  • NoMayさん、こちらの方法で使えるようです。

    ゴミの件は、設定変更するとビルドしてないのに、中間ファイル(?)が作成されることがあるようで、これがゴミとなっていました。(設定が変わるので、クリーンでは消えない)
    設定が確定した時点で、余分なファイル削除での対応

Children
No Data