12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- #!/usr/bin/env bash
- #
- # dtb_list extracts the list of DTB files from BR2_LINUX_KERNEL_INTREE_DTS_NAME
- # in ${BR_CONFIG}, then prints the corresponding list of file names for the
- # genimage configuration file
- #
- dtb_list()
- {
- local DTB_LIST="$(sed -n 's/^BR2_LINUX_KERNEL_INTREE_DTS_NAME="\([a-z0-9 \-]*\)"$/\1/p' ${BR2_CONFIG})"
- for dt in $DTB_LIST; do
- echo -n "\"$dt.dtb\", "
- done
- }
- #
- # linux_image extracts the Linux image format from BR2_LINUX_KERNEL_UIMAGE in
- # ${BR_CONFIG}, then prints the corresponding file name for the genimage
- # configuration file
- #
- linux_image()
- {
- if grep -Eq "^BR2_LINUX_KERNEL_UIMAGE=y$" ${BR2_CONFIG}; then
- echo "\"uImage\""
- else
- echo "\"zImage\""
- fi
- }
- main()
- {
- local FILES="$(dtb_list) $(linux_image)"
- local GENIMAGE_CFG="$(mktemp --suffix genimage.cfg)"
- local GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
- sed -e "s/%FILES%/${FILES}/" \
- board/freescale/common/mxs/genimage.cfg.template > ${GENIMAGE_CFG}
- rm -rf "${GENIMAGE_TMP}"
- genimage \
- --rootpath "${TARGET_DIR}" \
- --tmppath "${GENIMAGE_TMP}" \
- --inputpath "${BINARIES_DIR}" \
- --outputpath "${BINARIES_DIR}" \
- --config "${GENIMAGE_CFG}"
- rm -f ${GENIMAGE_CFG}
- exit $?
- }
- main $@
|