[轉]編寫 android.mk 中 LOCAL_C_INCLUDES 的技巧


看原文請移步:編寫 android.mk 中 LOCAL_C_INCLUDES 的技巧

 
        

在編寫android.mk的過程中,免不了要修改LOCAL_C_INCLUDES來設置頭文件的include目錄, 一般寫成這樣

 
        
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
                    $(LOCAL_PATH)/../../Classes/game \
                    $(LOCAL_PATH)/../../Classes/logic \
                    $(LOCAL_PATH)/../../Classes/view                    
 
        

有一個目錄就要寫一行, 實在繁瑣, 有沒有寫法可以把源碼目錄下的所有子目錄都引入呢, 看下面

 
        
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes
LOCAL_C_INCLUDES += $(shell ls -FR $(LOCAL_C_INCLUDES) | grep $(LOCAL_PATH)/$ )
LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES:$(LOCAL_PATH)/%:=$(LOCAL_PATH)/%)
 
        

即可把$(LOCAL_PATH)/../../Classes目錄和子目錄全部包含進來

 
        

還有一種寫法, 就是使用sed命令, 效果是一樣的, 我對sed不是很熟悉, 簡單寫了一下

 
        
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes 
LOCAL_C_INCLUDES += $(shell ls -FR $(LOCAL_C_INCLUDES) | grep $(LOCAL_PATH)/$ | sed "s/:/ /g" )
 
        

這兩行和上面三行的結果是一樣的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM