Копирование нескольких файлов txt в / с помощью Android.mk

Цель: Я хочу скопировать несколько txt-файлов в / system (Android-устройства) с помощью Android.mk

Мои выводы:

Мы можем скопировать файл, используя два подхода. 1) Используйте PRODUCT_COPY_FILES. Это делается с устройств / / makefile.mk

например:

PRODUCT_COPY_FILES := \ frameworks/base/data/etc/telephony.gsm.xml:system/etc/permissions/telephony.gsm.xml \ some/other/sourc/file:some/destination \ some/other/sourcefile2: some/destination 

2) Использование BUILD_PREBUILD

Ex:

 ##############copy txt file################## include $(CLEAR_VARS) #LOCAL_MODULE := mydata.txt LOCAL_MODULE_TAGS := optional LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PATH := $(TARGET_OUT)/myfolder LOCAL_SRC_FILES := mydata.txt include $(BUILD_PREBUILT) 

Для выполнения вышеописанной работы введите запись mydata.txt в файле build / target / product / core.mk

Мой конкретный запрос: теперь я могу копировать несколько файлов, используя второй подход, переписывая вышеуказанный код один за другим. Но я хочу использовать второй подход (BUILD_PERBUILD) для копирования нескольких файлов txt без повторного написания кода для всех файлов.

1) Могу ли я сделать это с помощью всего одного вызова $ (BUILD_PREBUILT)?

2) Может ли BUILD_MULTI_PREBUILD использоваться для решения этой задачи? как ?

Solutions Collecting From Web of "Копирование нескольких файлов txt в / с помощью Android.mk"

Хорошо, я нашел один взлом (который я знал), которого я не искал, но он работал и решил мою проблему очень простым способом.

Вы можете запускать команды оболочки в файле mk.

Поэтому, если вы хотите скопировать несколько файлов всего за один проход, используйте следующий код и поместите его в свой файл mk.

В следующем сценарии файлы, которые мне нужно скопировать, присутствуют в file_folder (каталог), который находится в том же каталоге, где находится мой файл mk. И я хочу скопировать все файлы, присутствующие в file_folder, в system / file_folder.

 #create a directory in /system/ $(shell mkdir -p $(TARGET_OUT)/file_folder/) #copy stuff $(shell cp $(LOCAL_PATH)/file_folder/* `pwd`/$(TARGET_OUT)/file_folder/) 

Это отлично работает. Итак, теперь у нас есть 3 способа сделать это. Надеюсь, это поможет кому-то вроде меня.