報這兩個錯主要是因為沒有搞清楚mk文件里if的寫法。
因為else ifeq這兩個關鍵詞是否寫在一排是有區別的:
寫在一排
ifeq ($(version), user)
LOCAL_SRC_FILES := \
else ifeq ($(version), debug)
LOCAL_SRC_FILES := \
else
LOCAL_SRC_FILES := \
endif
這種情況只需要一個endif,因為if層次只有一層。類似:
if(xx) {
}else if(yy){
}else {
}
寫在兩排
ifeq ($(version), user)
LOCAL_SRC_FILES := \
else
ifeq ($(version), debug)
LOCAL_SRC_FILES := \
else
LOCAL_SRC_FILES := \
endif
endif
這種情況則需要兩個endif,因為if層次有兩層。類似:
if(xx) {
}else{
if(yy) {
}else{
}
}
最后有兩個連續的反大括號,對應兩個endif。
其他
另外,提醒一下:
ifeq和(之間一定要有空格,不然報錯Miss separator.
