boot-directdisk.bbclass: Fix media generation problems with vmdk
The various populate methods need to accept a path as an argument vs using hard expanded variables. In the case of the boot-directdisk class it uses a different path for HDDDIR but it gets eclipsed by the the class definition at the point in time ${HDDDIR} gets expanded. The logical fix is to pass the arguments to the functions as opposed to using globally expanded variables from the class definitions. This patch changes 3 things: 1) syslinux_hddimg_populate takes an argument for the destination 2) syslinux_iso_populate takes an argument for the destination 3) populate is changed to boot_direct_populate because there was a conflict with it overriding the populate in bootimg.bbclass [YOCTO #3994] (From OE-Core rev: 63d164b755b984021f7e3cdba7280918ded6e821) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
ec9f4c3c25
commit
0ac89346de
|
@ -61,15 +61,15 @@ DISK_SIGNATURE ?= "${DISK_SIGNATURE_GENERATED}"
|
||||||
SYSLINUX_ROOT ?= "root=/dev/sda2"
|
SYSLINUX_ROOT ?= "root=/dev/sda2"
|
||||||
SYSLINUX_TIMEOUT ?= "10"
|
SYSLINUX_TIMEOUT ?= "10"
|
||||||
|
|
||||||
populate() {
|
boot_direct_populate() {
|
||||||
DEST=$1
|
dest=$1
|
||||||
install -d ${DEST}
|
install -d $dest
|
||||||
|
|
||||||
# Install bzImage, initrd, and rootfs.img in DEST for all loaders to use.
|
# Install bzImage, initrd, and rootfs.img in DEST for all loaders to use.
|
||||||
install -m 0644 ${STAGING_KERNEL_DIR}/bzImage ${DEST}/vmlinuz
|
install -m 0644 ${STAGING_KERNEL_DIR}/bzImage $dest/vmlinuz
|
||||||
|
|
||||||
if [ -n "${INITRD}" ] && [ -s "${INITRD}" ]; then
|
if [ -n "${INITRD}" ] && [ -s "${INITRD}" ]; then
|
||||||
install -m 0644 ${INITRD} ${DEST}/initrd
|
install -m 0644 ${INITRD} $dest/initrd
|
||||||
fi
|
fi
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -79,13 +79,13 @@ build_boot_dd() {
|
||||||
HDDIMG="${S}/hdd.image"
|
HDDIMG="${S}/hdd.image"
|
||||||
IMAGE=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.hdddirect
|
IMAGE=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.hdddirect
|
||||||
|
|
||||||
populate ${HDDDIR}
|
boot_direct_populate $HDDDIR
|
||||||
|
|
||||||
if [ "${PCBIOS}" = "1" ]; then
|
if [ "${PCBIOS}" = "1" ]; then
|
||||||
syslinux_hddimg_populate
|
syslinux_hddimg_populate $HDDDIR
|
||||||
fi
|
fi
|
||||||
if [ "${EFI}" = "1" ]; then
|
if [ "${EFI}" = "1" ]; then
|
||||||
grubefi_hddimg_populate
|
grubefi_hddimg_populate $HDDDIR
|
||||||
fi
|
fi
|
||||||
|
|
||||||
BLOCKS=`du -bks $HDDDIR | cut -f 1`
|
BLOCKS=`du -bks $HDDDIR | cut -f 1`
|
||||||
|
|
|
@ -86,10 +86,10 @@ build_iso() {
|
||||||
populate ${ISODIR}
|
populate ${ISODIR}
|
||||||
|
|
||||||
if [ "${PCBIOS}" = "1" ]; then
|
if [ "${PCBIOS}" = "1" ]; then
|
||||||
syslinux_iso_populate
|
syslinux_iso_populate ${ISODIR}
|
||||||
fi
|
fi
|
||||||
if [ "${EFI}" = "1" ]; then
|
if [ "${EFI}" = "1" ]; then
|
||||||
grubefi_iso_populate
|
grubefi_iso_populate ${ISODIR}
|
||||||
build_fat_img ${EFIIMGDIR} ${ISODIR}/efi.img
|
build_fat_img ${EFIIMGDIR} ${ISODIR}/efi.img
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -203,10 +203,10 @@ build_hddimg() {
|
||||||
populate ${HDDDIR}
|
populate ${HDDDIR}
|
||||||
|
|
||||||
if [ "${PCBIOS}" = "1" ]; then
|
if [ "${PCBIOS}" = "1" ]; then
|
||||||
syslinux_hddimg_populate
|
syslinux_hddimg_populate ${HDDDIR}
|
||||||
fi
|
fi
|
||||||
if [ "${EFI}" = "1" ]; then
|
if [ "${EFI}" = "1" ]; then
|
||||||
grubefi_hddimg_populate
|
grubefi_hddimg_populate ${HDDDIR}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
build_fat_img ${HDDDIR} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.hddimg
|
build_fat_img ${HDDDIR} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.hddimg
|
||||||
|
|
|
@ -42,19 +42,20 @@ grubefi_populate() {
|
||||||
}
|
}
|
||||||
|
|
||||||
grubefi_iso_populate() {
|
grubefi_iso_populate() {
|
||||||
grubefi_populate ${ISODIR}
|
iso_dir=$1
|
||||||
|
grubefi_populate $iso_dir
|
||||||
# Build a EFI directory to create efi.img
|
# Build a EFI directory to create efi.img
|
||||||
mkdir -p ${EFIIMGDIR}/${EFIDIR}
|
mkdir -p ${EFIIMGDIR}/${EFIDIR}
|
||||||
cp ${ISODIR}/${EFIDIR}/* ${EFIIMGDIR}${EFIDIR}
|
cp $iso_dir/${EFIDIR}/* ${EFIIMGDIR}${EFIDIR}
|
||||||
cp ${ISODIR}/vmlinuz ${EFIIMGDIR}
|
cp $iso_dir/vmlinuz ${EFIIMGDIR}
|
||||||
echo "EFI\\BOOT\\${GRUB_IMAGE}" > ${EFIIMGDIR}/startup.nsh
|
echo "EFI\\BOOT\\${GRUB_IMAGE}" > ${EFIIMGDIR}/startup.nsh
|
||||||
if [ -f "${ISODIR}/initrd" ] ; then
|
if [ -f "$iso_dir/initrd" ] ; then
|
||||||
cp ${ISODIR}/initrd ${EFIIMGDIR}
|
cp $iso_dir/initrd ${EFIIMGDIR}
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
grubefi_hddimg_populate() {
|
grubefi_hddimg_populate() {
|
||||||
grubefi_populate ${HDDDIR}
|
grubefi_populate $1
|
||||||
}
|
}
|
||||||
|
|
||||||
python build_grub_cfg() {
|
python build_grub_cfg() {
|
||||||
|
|
|
@ -53,14 +53,16 @@ syslinux_populate() {
|
||||||
}
|
}
|
||||||
|
|
||||||
syslinux_iso_populate() {
|
syslinux_iso_populate() {
|
||||||
syslinux_populate ${ISODIR} ${ISOLINUXDIR} isolinux.cfg
|
iso_dir=$1
|
||||||
install -m 0644 ${STAGING_DATADIR}/syslinux/isolinux.bin ${ISODIR}${ISOLINUXDIR}
|
syslinux_populate $iso_dir ${ISOLINUXDIR} isolinux.cfg
|
||||||
install -m 0644 ${STAGING_DATADIR}/syslinux/ldlinux.c32 ${ISODIR}${ISOLINUXDIR}
|
install -m 0644 ${STAGING_DATADIR}/syslinux/isolinux.bin $iso_dir${ISOLINUXDIR}
|
||||||
|
install -m 0644 ${STAGING_DATADIR}/syslinux/ldlinux.c32 $iso_dir${ISOLINUXDIR}
|
||||||
}
|
}
|
||||||
|
|
||||||
syslinux_hddimg_populate() {
|
syslinux_hddimg_populate() {
|
||||||
syslinux_populate ${HDDDIR} ${SYSLINUXDIR} syslinux.cfg
|
hdd_dir=$1
|
||||||
install -m 0444 ${STAGING_DATADIR}/syslinux/ldlinux.sys ${HDDDIR}${SYSLINUXDIR}/ldlinux.sys
|
syslinux_populate $hdd_dir ${SYSLINUXDIR} syslinux.cfg
|
||||||
|
install -m 0444 ${STAGING_DATADIR}/syslinux/ldlinux.sys $hdd_dir${SYSLINUXDIR}/ldlinux.sys
|
||||||
}
|
}
|
||||||
|
|
||||||
syslinux_hddimg_install() {
|
syslinux_hddimg_install() {
|
||||||
|
|
Loading…
Reference in New Issue