2017-02-27 6 views
1

を作成するのにを使用しようとしています。 LevelDBにはscript that generates some platform-specific flagsがあります。私はgenruleを使ってBuckからスクリプトを呼び出すことができますが、出力からいくつかのフラグを抽出する必要があります。Buck genruleの結果をBuckに読み込む

genrule(
    name = 'build_config', 
    out = 'build_config.mk', 
    srcs = glob([ 
    'build_detect_platform', 
    'db/**/*', 
    'table/**/*', 
    'util/**/*', 
    ]), 
    cmd = './build_detect_platform $OUT . ', 
) 

ターゲットの結果を文字列としてBuckに読み込むことはできますか?

答えて

0

genruleの出力をBuckパーサーへの入力として使用していますか?これは不可能です。

+0

私はそう信じています。私は 'genrule'を実行し、出力をPythonに読み込み、結果からさらにルールを生成したいと思います。私はこれがBuckの宣言的性質に反するかもしれないことを認識しています。私はそれが可能かどうか疑問に思っていただけです。 – sdgfsdh

+0

これを実行できる唯一の方法は、プラットフォームに基づいて変更されるヘッダーファイルを生成することです。 Markが言っているように、Buckではルールを動的に変更または追加することは不可能です。 – sdwilsh

関連する問題