bitbake не может найти созданную функцию - PullRequest
0 голосов
/ 24 февраля 2020

Я использую релиз yocto morty для создания своего собственного linux образа.

В моем build-sdcard.bbclass я определил две функции my_mkimg_fat16 и my_mkimg_ext4 для форматирования заданных разделов с соответствующей файловой системой.

Чтобы сделать мой код более обобщенным c Я бы хотел выбрать соответствующую функцию, создав вызов функции в зависимости от выбранной файловой системы раздела:

my_mkimg _ $ (find_fs_type "persistfs") , который, например, выбирает определенную файловую систему для раздела persistfs. Функция find_fs_type уже возвращает правильный тип ext4 или fat16.

Но вот моя проблема:

my_mkimg_$(find_fs_type "persistfs")

Сбой bitbake с сообщением об ошибке "my_mkimg_fat16: не найдено "

Итак, очевидно, что конструкция работает, но bitbake не может найти функцию.

Но вызов сконструированной функции работает, если я добавлю явный вызов функции my_mkimg_fat16 раньше:

my_mkimg_fat16 "persistfs" ${SDIMG_CONFIG_DIR}   ${persistfs_min_size}
my_mkimg_$(find_fs_type "persistfs") "persistfs" ${SDIMG_CONFIG_DIR}   ${persistfs_min_size}

Битбэйк "оптимизирует" функцию my_mkimg_fat16, если я не вызываю ее по полному имени в рецепте?

Что мне нужно сделать, чтобы использовать

my_mkimg _ $ (find_fs_type "persistfs")

в моем коде?

Спасибо за вашу помощь

...