qacli project create | modify
'create'
サブコマンドは新しいPerforce QACプロジェクトを生成するのに使用し、'modify'
サブコマンドは既存のPerforce QACプロジェクトを変更するのに使用します。
使用方法
project create
:
project create -P <directory> [-K <config name>] [-n <name>] [-A <acf-file>] [-R <rcf-file>] [-C <cct-file>] ... [-a] [-U <user-messages-file>] [-V <vcf-file>] [--] [-h]
project modify
:
project modify -P <directory> [-K <config name>] [-n <name>] [-A <acf-file>] [-R <rcf-file>] [-C <cct-file>] ... [-a] [-d] [-m <replace|update|merge>] [-U <user-messages-file>] [-V <vcf-file>] [--] [-h]
詳しい説明
qacli project create
コマンドは新しいPerforce QACプロジェクトを生成しますが、以下の制約があります。
- 指定したディレクトリパスに、Perforce QAC プロジェクトが存在してはならない
- 指定したディレクトリは存在しなくてもかまわないが、その親ディレクトリは存在しなければならない
--qaf-project (-P)
オプションの記述は必須だが、その他のオプションは任意である
任意の引数'--cct'
は有効なコンパイラ互換テンプレートのパスである必要があります。指定されていない場合、デフォルトの"QAC_Generic_C.cct"
、 "QAC_Generic_C++.cct”
が使用される。つまり、CCTの一般的な用途は特定のコンパイラに紐づけされないということです。
複数のコンパイラをもつプロジェクトへサポートを追加するためにこの引数を複数回指定することができます。使用言語に最初に使用されたコンパイラはその言語のデフォルトコンパイラと判断されます。
任意の引数'--rcf'
は有効なルール設定ファイルのパスである必要があります。指定されていない場合、デフォルトの"default-<locale>.rcf”
が使用されます。英語環境では"default-en_US.rcf”
、日本語環境では "default-ja_JP.rcf”
になります。
任意の引数'--acf'
は有効なコンパイラ互換テンプレートのパスである必要があります。指定されていない場合、デフォルトの "default.acf”
が使用されます(C および、C++)。
任意の引数'--name'
はプロジェクトの命名に使用することができます。プロジェクトの作成時にプロジェクト名を指定しない場合、親ディレクトリの名前がデフォルトで使用されます。有効なプロジェクト名には一定の制約があります。
詳細はファイル名を参照してください。
qacli project modify
コマンドは既存のPerforce QACプロジェクトを変更するのに使用しますが、以下の制約があります。
- 指定したディレクトリパスに、Perforce QAC プロジェクトが存在しなければならない
設定ファイルを更新するために任意の --update-method <replace|update|merge>
引数を使用することができます。このオプションはアップデートをどのようにインポートするかを指定します。詳細については、以下のオプション‑‑update‑method, ‑m
(modify のみ) を参照してください。
任意の引数'--default'
は指定したCCTを使用言語のデフォルトのCCTとして示唆するのに使用することができます。
ユーザメッセージファイルの管理
ユーザメッセージファイルを使用すると、各コンポーネントの独自のメッセージを既存、または新しく作成された診断番号に対して割当てることができます。必要に応じて、関連する html ヘルプファイルとメッセージのリファレンスを設定することもできます。
ユーザメッセージファイルは単純なXMLファイルで、手動またはGUIから作成することができます。詳細についてはユーザメッセージの作成を参照してください。
--user-messages
オプションを qacli project create
(または、 modify
) と共に使用すると Perforce QAC システムにユーザメッセージXMLファイルを追加します。
オプション
*プロジェクトを生成するときにはデフォルトの場所です。
例
基本のプロジェクト生成
以下のコマンドでプロキシコンパイラ(QAC Generic C
および、 QAC Generic C++
)を使用するPerforce QAC for C、Perforce QAC for C++による1次解析が設定された新しいPerforce QACプロジェクトが生成されます。
デフォルトの解析メッセージが有効になり(すべてのメッセージ)、プロジェクトには sample_c
という名前がつきます。
Auto CCT によるプロジェクト生成
以下のプロジェクト生成コマンドを使用したプロジェクトの同期中に、デフォルトACF、RCFをもつプロジェクトを生成し、自動的に検知しCCTを生成します。
詳細なプロジェクト生成
以下のコマンドでQACを使用し、gcc11.2コンパイラ、C++11用の設定がされたPerforce QACプロジェクトが生成されます。
qacli project create --qaf-project /home/kmac/sample_c --acf default_c.acf --rcf m3cm-5.5.0-en_US.rcf --cct GNU_GCC-gcc_11.2-unknown-C-c11.cct --name "Sample MISRA"
デフォルトのMISRAメッセージが有効になり、プロジェクトには “Sample MISRA”
という名前がつきます。
複数のCCTをもつプロジェクト生成
以下のコマンドでQACを使用し、g++11.2コンパイラ、C++11デフォルトのコンパイラをもつC++11およびC++14用の設定がされたPerforce QACプロジェクトが生成されます。
qacli project create --qaf-project /home/kmac/sample_c --cct GNU_GCC-g++_11.2-x86_64-generic-linux-C++-c++11.cct --cct GNU_GCC-g++_11.2-x86_64-generic-linux-C++-c++14.cct
デフォルトの解析メッセージが有効になり(すべてのメッセージ)、プロジェクトには sample_c という名前がつきます。
プロジェクトのRCFを変更する
以下のMISRA C解析のセットアップをしたCプロジェクトを生成したとします。
qacli project create --qaf-project /home/kmac/sample_c --acf default_c.acf --rcf m3cm-5.5.0-en_US.rcf --cct GNU_GCC-gcc_11.2-unknown-C-c11.cct --name "Sample MISRA"
そこにMISRA C++のセットアップをしたC++をしたい場合、以下のようにコマンドに変更を加えることができます。
qacli project modify --qaf-project /home/kmac/sample_c --acf default.acf --rcf m2cpp-1.0.0-en_US.rcf --cct GNU_GCC-g++_11.2-x86_64-generic-linux-C++-c++11.cct –name "Sample MISRA C and C++" --update-method merge
このコマンドでQACを使用し、g++11.2コンパイラ、C++11デフォルトのコンパイラをもつC++11およびC++14用の設定がされたPerforce QACプロジェクトが生成されます。
デフォルトの解析メッセージが有効になり(すべてのメッセージ)、プロジェクトには sample_c という名前がつきます。
新しいCCTを追加する
以下のようなコマンドでプロジェクトを生成した場合:
qacli project create --qaf-project /home/kmac/sample_c --cct GNU_GCC-g++_11.2-x86_64-generic-linux-C++-c++11.cct
これに、C++14(デフォルトとして)を追加するには、以下のようにコマンドを変更します。
qacli project modify --qaf-project /home/kmac/sample_c --cct GNU_GCC-g++_11.2-x86_64-generic-linux-C++-c++14.cct --default --update-method merge
デフォルトのCCTを変更する
以下のようなコマンドで複数のCCTをもつプロジェクトを生成した場合:
qacli project create --qaf-project /home/kmac/sample_c --cct GNU_GCC-g++_11.2-x86_64-generic-linux-C++-c++11.cct --cct GNU_GCC-g++_11.2-x86_64-generic-linux-C++-c++14.cct
C++11 CCTが最初に加えられたため、これがC++言語のデフォルトのCCTと判断されます。
デフォルトとしてC++14を追加するには、以下のようにコマンドを変更します。
qacli project modify --qaf-project /home/kmac/sample_c --cct GNU_GCC-g++_11.2-x86_64-generic-linux-C++-c++14.cct --default