2011-03-16 70 views
2

根據Android在線文檔,目前沒有辦法在Android makefile中爲gcc編譯器指定多個/混合文件擴展名。我使用的源代碼是一個公共項目,它有多個擴展名,爲了讓它能夠編譯,我需要在構建之前用其他擴展名.cpp重命名這些文件。如何設置Android Makefile以複製/重命名文件?

我設置了一個項目子文件夾我可以將這些文件複製到並重命名它們,然後從那裏鏈接到它們,但是我想讓這一步成爲構建過程的一部分,以便隨時修改這些文件我可以肯定,這種構建將反映這些變化。

我不知道如何告訴Android.mk文件複製文件並重命名它們。我試過,但它不工作:

cp '$(LOCAL_PATH)/$(SOURCE_ROOT)/Sprite.mm' '$(LOCAL_PATH)/$(MM_RENAMES)/Sprite.cpp' 

我收到以下錯誤:

Anhdroid.mk:10 * missing separator. Stop.

感謝,

更新

或者,如果有人知道的方式嵌入一​​個調用來執行一個shell/perl腳本在makefile的開頭也會起作用。

回答

2

好,我知道,這個工作拷貝文件:

$(shell cp -fr $(LOCAL_PATH)/$(SOURCE_ROOT)/Sprite.mm $(LOCAL_PATH)/$(MM_RENAMES)/Sprite.cpp) 

而且這也適用於運行外部腳本:

$(perl scripts/foo.pl) 
相關問題