2016-04-17 5 views
3

AOSP(マスター)をコンパイルする際にジャックを完全に無効にする方法を知っている人はいますか?アンドロイド編集でJACKを無効にする

私はいつもジャックの問題を持っていたので、私はちょうどいつもANDROID_COMPILE_WITH_JACK := falseでBoardConfig.mk(CyanogenModをコンパイル)を追加することによって、それをオフにしました。 私は現在aospをコンパイルしており、このコマンドを無視しているようです。

注:私は実際にはジャックの問題を解決しようとしていません、私はそれをオフにしようとしています。

答えて

5

masterブランチの代わりにAOSPタグを使用してビルドすることをお勧めします。たとえば、最近リリースされたMarshmallowはandroid-6.0.1_r43タグです。

それでは、デフォルト値を担当してclear_vars.mkを見てみましょう: LOCAL_JACK_ENABLED https://android.googlesource.com/platform/build/+/android-6.0.1_r43/core/clear_vars.mk#110

:= $(DEFAULT_JACK_ENABLED)# ''(つまり無効)、フル、無効、インクリメンタル

Android.mk またはでモジュールごとにLOCAL_JACK_ENABLEDをオーバーライドする必要があります。グローバルデフォルト値はDEFAULT_JACK_ENABLEDです。

P.S.

3

コードを変更することなくJACKを無効にすることができます。

make ANDROID_COMPILE_WITH_JACK:=false 

Androidプロジェクト全体を作成するときにやってください。

魔法はbuild/make/combo/javac.mkである:

ifndef ANDROID_COMPILE_WITH_JACK 
# Defines if compilation with jack is enabled by default. 
ANDROID_COMPILE_WITH_JACK := true 
endif 

そしてbuild/make/core/config.mk

ifeq ($(ANDROID_COMPILE_WITH_JACK),true) 
DEFAULT_JACK_ENABLED:=full 
else 
DEFAULT_JACK_ENABLED:= 
endif 

そしてbuild/make/core/clear_vars.mk

LOCAL_JACK_ENABLED:=DEFAULT_JACK_ENABLED 

ローカルモジュールでの変更が無駄である理由も示し。

関連する問題