Cmake に依存関係がないという問題が発生しました。問題のコードは次のようになります。
SUBROUTINE foo
USE A
#ifdef C
USE B
#endif
...
依存関係を生成するときに、プリプロセッサのブロックされた部分が除外されているようです。モジュール B がこのソース ファイルの前にビルドされることはないため、これはエラーの原因です。どうすればこれを解決できますか?
アップデート:
ここでプリプロセッサの定義を設定しています。
add_library (abc STATIC ${abc_sources})
set_target_properties (abc PROPERTIES COMPILE_FLAGS "${BUILD_FLAGS} -D C")