Как принимать решения на основе значений свойств, написанных в Android.bp относительно Soong?

Я пишу обертку над типом модуля Сунга, где я хочу добавить некоторые дополнительные проверки.

Сначала я зарегистрировал свой пользовательский тип модуля:

func init() {
    android.RegisterModuleType("my_cc_library_static", MyStaticLibrary)
}

Во-вторых, я определил функцию для этого -

func MyStaticLibrary() android.Module {
    m, library := cc.NewLibrary(android.HostAndDeviceSupported)
    library.BuildOnlyStatic()
    module := m.Init()
    prop := module.GetProperties()
    for _, properties := range prop {
        propertiesValue := reflect.ValueOf(properties).Elem()
        fmt.Printf("Prop Value Ele : %+v\n  ", propertiesValue)
    }
}

Вывод этого показывает пустую структуру. Однако я ожидаю, что эта структура будет заполнена значениями, указанными в Android.bp компонента.

Скорее всего, модуль.GetPropeties() не следует вызывать так рано (на этапе регистрации), но тогда я не совсем уверен, куда еще можно позвонить. Или мне нужно добавить какие-нибудь крючки?

Я хочу читать Cflags из Android.bp и, исходя из его значения, нужно добавить / удалить некоторые дополнительные cflags.

0 ответов

Другие вопросы по тегам