其實就是改makefile文件:
1,開啟宏定義:
在external/webkit/Android.mk中開啟宏:
- ifeq ($(ENABLE_WML), )
- ENABLE_WML := true
- endif
意思是:如果ENABLE_WML環境值沒有被定義過,則定義它為true。
然後在同一個文件下加入:
- ifeq ($(ENABLE_WML), true)
- LOCAL_CFLAGS += -DENABLE_WML=1
- endif
這裡的-D編譯選項是用來定義代碼中的宏的,即設置c/c++中的DENABLE_WML宏的值為1,這就相當於在代碼中#define ENABLE_WML 1。
小提示:JavaScriptCore/wtf/Platform.h這裡有很多#defineENABLE_XXX的宏,可以修改一些宏的值來配置。這裡看一下有沒有ENABLE_WML,如果沒有,就加
#define ENABLE_WML 1;
2,包含頭文件
在external/webkit/Android.mk文件中,你可以看到很多LOCAL_C_INCLUDES變量。
在兩個地方加入對wml頭文件的引用:
- LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \
- $(base_intermediates)/WebCore/ \
- $(base_intermediates)/WebCore/css \
- $(base_intermediates)/WebCore/html \
- $(base_intermediates)/WebCore/platform \
- $(base_intermediates)/WebCore/wml
- LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES) \
- $(LOCAL_PATH)/WebCore/workers \
- $(LOCAL_PATH)/WebCore/xml \
- $(LOCAL_PATH)/WebCore/wml