基本移行オプション#

次の表に、基本的な移行のコマンドライン・オプションを示します。

オプション

説明

--analysis-scope-path=<dir>

移行するソースツリーの解析スコープのディレクトリー・パス。デフォルト: --in-root の値。

--compilation-database=<dir>

移行するファイルのコンパイル・データベース (compile_commands.json) のディレクトリー・パスを指定します。プロジェクト・ファイルに記述されているパスとビルドオプションは、移行のガイドに使用されます。

パスを指定しない場合、最初の入力ソースファイルのすべての親ディレクトリーから compile_commands.json を検索します。

-p と同様です。

--cuda-include-path=<dir>

CUDA* ヘッダーファイルのディレクトリー・パス。

--extra-arg=<string>

移行コマンドラインに追加する引数を指定します。このオプションは追加の引数をカンマで区切ったリストで受け入れ、コマンド内で複数回指定できます。例:

dpct xx.cu --extra-arg="-I /path, -I /path2" --extra-arg="-I /path/to/header"

dpct -- -help コマンドを使用して、移行コマンドの追加引数として渡すことができるオプションを確認できます。

--in-root=<dir>

移行するソースツリーのルート・ディレクトリー・パス。このルート以下のファイルのみが移行されます。デフォルト:

  • 入力ソースファイルが指定されない場合は、現在のディレクトリーです。

  • 入力ソースファイルが指定される場合の最初の入力ソースファイルのディレクトリー。

詳細:

  • --in-root で指定したディレクトリー内のすべてのソース (任意の入れ子レベル) は移行されます。

  • --in-root で指定したディレクトリー内のヘッダーファイル (任意の入れ子レベル) のうち、移行するソースやヘッダーファイルでインクルードされているものは移行されます。

  • --in-root ディレクトリーの外部にあるファイルは、プログラムやソースファイルでインクルードされていても移行されません。

--in-root-exclude=<dir|file>

指定するディレクトリーやファイルを処理から除外します。

--no-incremental-migration

段階的な移行を行わないことをツールに指示します。デフォルト: off (段階的な移行を行います)。

--out-root=<dir>

生成されるファイルのルート・ディレクトリー・パス。存在しない場合は作成されます。デフォルト: dpct_output

生成されたファイルの相対パスは維持されます。デフォルトでファイル拡張子は次のように変更されます。

  • *.cu *.dp.cpp

  • *.cpp *.cpp.dp.cpp

  • *.cc *.cc.dp.cpp

  • *.cxx *.cxx.dp.cpp

  • *.C *.C.dp.cpp

  • *.cuh *.dp.hpp

  • *.h *.hpp *.hxx → 拡張子は同じままで維持されます

ファイル拡張子の変更を .cu.cuh にみに限定するには、--change-cuda-files-extension-only オプションを使用します。

-p

--compilation-database のエリアス。

--process-all

隠しファイルを除くすべてのファイルを、--in-root ディレクトリーから --out-root ディレクトリーに移行またはコピーします。--in-root オプションは、明示的に指定する必要があります。デフォルト: off

詳細:

--process-all オプションと --in-root オプションを指定して、入力ファイルを指定しないと、隠しファイルを除くすべてのファイルが --in-root ディレクトリーから出力ディレクトリーに移行またはコピーされます。

  • コンパイル・データベースがある場合:

    • コンパイル・データベース・ファイルは、コンパイル・データベースで指定されたオプションを適用して移行されます。

    • コンパイル・データベースにリストされていない .cu 拡張子のファイルは、スタンドアロンとして移行されます。

    • 残りのファイルは、–out-root ディレクトリーにコピーされます。

  • コンパイル・データベースがない場合:

    • .cu 拡張子のファイルは、スタンドアロンとして移行されます。

    • 残りのファイルは、-out-root ディレクトリーにコピーされます。

コマンドラインで入力ファイルが提供されると、--process-all は無視されます。

--stop-on-parse-err

解析エラーが発生した場合、移行とレポートの生成を停止します。デフォルト: off

--vcxprojfile=<file>

移行する Visual Studio* プロジェクトの C++ プロジェクト・ファイル vcxproj のディレクトリー・パスを指定します。プロジェクト・ファイルに記述されているパスとビルドオプションは、移行のガイドに使用されます。

--intercept-build

インターセプト・ビルド・ツールでコンパイル・データベースを生成します。

--sycl-file-extension=<value>

移行するソースファイルの拡張子を指定します。設定可能な値は以下のとおりです。

  • =dp-cpp: 拡張子 ‘.dp.cpp’ と ‘.dp.hpp’ (デフォルト) を使用します。

  • =sycl-cpp: 拡張子 ‘.sycl.cpp’ と ‘.sycl.hpp’ を使用します。

  • =cpp: 拡張子 ‘.cpp’ と ‘.hpp’ を使用します。