[英]How to get rebar to run 'make' for a dependency?
我的一個依賴項不使用rebar
- 它使用Makefile。 如何讓rebar
運行此Makefile,而不是嘗試編譯源本身?
請注意,我想繼續使用鋼筋來完成其他任務。
查看rebar.config示例文件 ,您可以將依賴項標記為raw
,這意味着它不是由rebar編譯的。 然后你可以添加一個pre或post編譯鈎子來在該依賴項目錄中運行make。 假設它們具有OTP文件結構,rebar generate
命令應該仍然能夠獲取在那里構建的任何Erlang應用程序。
如果你通過make
使用rebar
,你可以將這種代碼添加到Makefile:
@if [[ -f $@/Makefile ]]; \
then echo 'make -C $@ all' ; \
make -C $@ all ; \
else echo 'cd $@ && rebar get-deps compile && cd ../..' ; \
cd $@ && rebar get-deps compile && cd ../.. ; fi
它檢查$@
是否有Makefile然后決定是否使用make
或rebar
。
這個片段來自erl.mk
https://github.com/fenollp/erl-mk/blob/master/erl.mk#L17-L21
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.