状態: Accepted
既存ビルドシステムからの移行機能を持つか。Node 系のツールには移行機能があり、 採用障壁を下げる目的では機能している。
既存マニフェストの静的翻訳は行わない。実行結果の動的抽出のみを行い、
機能の重心を生成(import)ではなく等価性検査(verify)に置く。
package.json という宣言的データだから。
CMake の正本はプログラムであり、実際の構成は実行して初めて確定するCMakeLists.txt の構文的変換は if(WIN32)、find_package、ユーザ定義マクロで破綻し、
修正コストが書き直しを上回るmeson introspect、bazel aquery)dowel migrate import の出力は成果物ではなく下書き。未検証マークを付けるdowel migrate verify は既存の compile_commands.json と自システムのアクション集合を
比較して差分を報告する。アクショングラフを既に持つため実装コストが低いverify から着手し、import は CMake File API のみに絞る。
Bazel aquery は規模前提が異なるため優先度を下げる。静的翻訳は実装しない。