Как работать с файлом исходного кода, автоматически сгенерированным в процессе сборки - PullRequest
4 голосов
/ 07 мая 2010

Я пытаюсь создать стороннюю библиотеку, которая использует автоматически сгенерированные файлы исходного кода.В обычном случае файлы такого типа генерируются средствами сборки gnu.Мой вопрос: как я могу сказать инструментам сборки Android NDK для генерации и создания таких файлов?

Заранее спасибо

1 Ответ

4 голосов
/ 02 ноября 2010

Инструмент ndk-build - это тонкий скрипт-обертка, который вызывает GNU Make с некоторыми аргументами командной строки. В свой файл Android.mk вы можете добавить любые правила сборки, которые вам нравятся, в том числе создание исходных файлов.

Если у вас есть сгенерированное имя файла в переменной LOCAL_SRC_FILES вместе с правилом для создания этого файла, make выяснит это. Это минимальный пример Android.mk, который копирует «generate.in» в «generate.c», а затем компилирует его:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := ndkexample
LOCAL_SRC_FILES := generated.c
$(LOCAL_PATH)/generated.c : $(LOCAL_PATH)/generated.in
    echo "Generate file"
    cp $< $@
...