其实就是改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