条件付きコンパイルを含む C/C++ ソース ファイルがあります。顧客に出荷する前に、ほとんどの #if ステートメントを削除して、顧客が正しい -D オプションをコンパイラに渡すことを心配する必要がないようにしたいと考えています。
これを実装して Python で動作させていますが、#ifdef および #ifndef ステートメントのみを適切に処理します。#if ステートメントのサポートを追加する必要がありますが、#if の構文ははるかに複雑です。(たとえば、&&、||、!、括弧、関係演算子、算術などを使用できます)。
#if ステートメントを解析して評価する既存のオープンソース コードはありますか? (できればPythonで)。
私が知っている唯一の実装は GCC ですが、これはこのタスクには複雑すぎます。