2017-07-07 41 views
1

Bazelは、バイナリ依存関係を使用しないことをお勧めします。but to build the dependency from source using Bazel私は依存関係を持っています - xgboost - それはMakefilesを使ってビルドされています。そして、私はCanfileをBazelに変換するのが標準的な戦略であると思っていました - プログラマが変換の一部として使用する標準ツールがあれば。MakefileをBazelに変換しますか?

答えて

1

今のところ「標準的な方法」はありません。もちろん

genrule(
    name = "xgboost", 
    srcs = glob(["xgboost/**"]), 
    cmd = "\n".join([ 
     "DIR=$$(mktemp -d $${TMPDIR-/tmp}/tmp.XXXXXXX)", 
     "(cd $(execution_root)/xgboost && cp -fr . \"$${DIR}\")", 
     "(cd \"$${DIR}\" && make target)", 
     "cp $${DIR}/output [email protected]", 
     ]), 
    outs = ["xgboost-output"], 
    local = 1, 
) 

targetoutputxgboost-outputどのような作品によって置き換えられる:例えば、単に非密封generuleに作成し、ルールの必要な出力を宣言するために支払うために、おそらくですが、最も簡単な方法あなたのために。

関連する問題