Check all dependencies independent of LB_BUILD_WITH_CHROOT

Since commit fdc9250bc (Changing package dependency checks within chroot
to work outside as well), Check_package automatically checks for
LB_BUILD_WITH_CHROOT and works inside as well as outside of the chroot,
so no need to check LB_BUILD_WITH_CHROOT before calling them.
Install_package and Remove_package are just a no-op when building
without chroot, so they can also be called unconditionally.
Restore_cache and Save_cache do not check LB_BUILD_WITH_CHROOT but it
it should not hurt to call them when not needed (which already happened
in some cases).

This commit makes all Check_package calls unconditional on
LB_BUILD_WITH_CHROOT.

For binary_syslinux, this fixes the check (which used outdated paths
outside the chroot since 7b6dfd9d1), for binary_grub-efi,
binary_package-lists and chroot_package-lists this simplifies the code
(but also causes the check to become package-based instead of file-based
on apt-based systems), and for binary_loadlin and binary_win32-loader
this adds the check outside the chroot which was previously missing.
This commit is contained in:
Matthijs Kooijman 2017-08-28 11:29:54 +02:00 committed by Raphaël Hertzog
parent 5ca1ded228
commit 036b6161f2
6 changed files with 57 additions and 164 deletions

View File

@ -45,56 +45,11 @@ Check_architectures amd64 i386
Check_crossarchitectures
# Checking depends
case "${LB_BUILD_WITH_CHROOT}" in
true)
_CHROOT_DIR=""
Check_package chroot /usr/lib/grub/x86_64-efi/configfile.mod grub-efi-amd64-bin
Check_package chroot /usr/lib/grub/i386-efi/configfile.mod grub-efi-ia32-bin
Check_package chroot /usr/bin/grub-mkimage grub-common
Check_package chroot /usr/bin/mcopy mtools
Check_package chroot /sbin/mkfs.msdos dosfstools
;;
false)
_CHROOT_DIR="chroot"
if [ ! -e /usr/lib/grub/x86_64-efi ]
then
# grub-efi-amd64-bin
Echo_error "/usr/lib/grub/x86_64-efi - no such directory"
exit 1
fi
if [ ! -e /usr/lib/grub/i386-efi ]
then
# grub-efi-ia32-bin
Echo_error "/usr/lib/grub/i386-efi - no such directory"
exit 1
fi
if [ ! -e /usr/bin/grub-mkimage ]
then
# grub-common
Echo_error "/usr/bin/grub-mkimage - no such file."
exit 1
fi
if [ ! -e /usr/bin/mcopy ]
then
# mtools
Echo_error "/usr/bin/mcopy - no such file."
exit 1
fi
if [ ! -e /sbin/mkfs.msdos ]
then
# dosfstools
Echo_error "/sbin/mkfs.msdos - no such file."
exit 1
fi
;;
esac
Check_package chroot /usr/lib/grub/x86_64-efi/configfile.mod grub-efi-amd64-bin
Check_package chroot /usr/lib/grub/i386-efi/configfile.mod grub-efi-ia32-bin
Check_package chroot /usr/bin/grub-mkimage grub-common
Check_package chroot /usr/bin/mcopy mtools
Check_package chroot /sbin/mkfs.msdos dosfstools
# Setting destination directory
case "${LIVE_IMAGE_TYPE}" in
@ -125,6 +80,11 @@ case "${LB_BUILD_WITH_CHROOT}" in
mkdir -p chroot/${LIVE_BUILD_PATH}
cp "${LIVE_BUILD_PATH}/efi-image" "chroot/${LIVE_BUILD_PATH}"
cp "${LIVE_BUILD_PATH}/grub-cpmodules" "chroot/${LIVE_BUILD_PATH}"
_CHROOT_DIR=""
;;
false)
_CHROOT_DIR="chroot"
;;
esac
#####

View File

@ -43,19 +43,20 @@ Check_lockfile .lock
# Creating lock file
Create_lockfile .lock
case "${LB_ARCHITECTURES}" in
amd64|i386)
# Checking depends
Check_package chroot /usr/lib/loadlin/loadlin.exe.gz loadlin
# Restoring cache
Restore_cache cache/packages.binary
# Installing depends
Install_package
case "${LB_BUILD_WITH_CHROOT}" in
true)
# Checking depends
Check_package chroot /usr/lib/loadlin/loadlin.exe.gz loadlin
# Restoring cache
Restore_cache cache/packages.binary
# Installing depends
Install_package
_PREFIX="chroot"
;;
@ -69,15 +70,11 @@ case "${LB_ARCHITECTURES}" in
gunzip -c "${_PREFIX}/usr/lib/loadlin/loadlin.exe.gz" > binary/tools/loadlin.exe
gunzip -c "${_PREFIX}/usr/share/doc/loadlin/manual.txt.gz" > binary/tools/loadlin.txt
case "${LB_BUILD_WITH_CHROOT}" in
true)
# Saving cache
Save_cache cache/packages.binary
# Saving cache
Save_cache cache/packages.binary
# Removing depends
Remove_package
;;
esac
# Removing depends
Remove_package
cat > binary/install/install.bat << EOF
\tools\loadlin.exe vmlinuz initrd=initrd.gz

View File

@ -55,23 +55,13 @@ if ls config/package-lists/*.list > /dev/null 2>&1 || \
then
# Check depends
Check_package host /usr/bin/apt-ftparchive apt-utils
Check_package chroot /usr/bin/grep-aptavail dctrl-tools
case "${LB_BUILD_WITH_CHROOT}" in
true)
# Restoring cache
Restore_cache cache/packages.chroot
# Restoring cache
Restore_cache cache/packages.chroot
# Check depends
Check_package chroot /usr/bin/grep-aptavail dctrl-tools
# Installing depends
Install_package
;;
false)
Check_package host /usr/bin/grep-aptavail dctrl-tools
;;
esac
# Installing depends
Install_package
if [ -e "${LIVE_BUILD}/share/bin/Packages" ]
then
@ -163,15 +153,11 @@ then
rm -rf chroot/binary.deb
mv chroot/var/lib/dpkg/status.tmp chroot/var/lib/dpkg/status
case "${LB_BUILD_WITH_CHROOT}" in
true)
# Removing depends
Remove_package
# Removing depends
Remove_package
# Saving cache
Save_cache cache/packages.chroot
;;
esac
# Saving cache
Save_cache cache/packages.chroot
# Creating stage file
Create_stagefile .build/binary_package-lists

View File

@ -114,42 +114,13 @@ else
fi
# Checking depends
case "${LB_BUILD_WITH_CHROOT}" in
true)
Check_package chroot /usr/lib/$(echo ${_BOOTLOADER} | tr [a-z] [A-Z]) ${_BOOTLOADER}
Check_package chroot /usr/lib/syslinux syslinux-common
Check_package chroot /usr/lib/$(echo ${_BOOTLOADER} | tr [a-z] [A-Z]) ${_BOOTLOADER}
Check_package chroot /usr/lib/syslinux syslinux-common
if ls "${_SOURCE}"/*.svg* > /dev/null 2>&1
then
Check_package chroot /usr/bin/rsvg-convert librsvg2-bin
fi
;;
false)
if [ ! -e "/usr/share/$(echo ${_BOOTLOADER} | tr [a-z] [A-Z])" ]
then
Echo_error "/usr/share/$(echo ${_BOOTLOADER} | tr [a-z] [A-Z])"
exit 1
fi
if [ ! -e /usr/lib/syslinux ]
then
# syslinux-common
Echo_error "/usr/lib/syslinux - no such directory"
exit 1
fi
if ls "${_SOURCE}"/*.svg* > /dev/null 2>&1
then
if [ ! -e /usr/bin/rsvg-convert ]
then
# librsvg2-bin
Echo_error "/usr/bin/rsvg-convert - no such file"
exit 1
fi
fi
;;
esac
if ls "${_SOURCE}"/*.svg* > /dev/null 2>&1
then
Check_package chroot /usr/bin/rsvg-convert librsvg2-bin
fi
# Restoring cache
Restore_cache cache/packages.binary

View File

@ -55,17 +55,17 @@ esac
case "${LB_ARCHITECTURES}" in
amd64|i386)
# Checking depends
Check_package chroot /usr/share/win32/win32-loader.exe win32-loader
# Restoring cache
Restore_cache cache/packages.binary
# Installing depends
Install_package
if [ "${LB_BUILD_WITH_CHROOT}" = "true" ]
then
# Checking depends
Check_package chroot /usr/share/win32/win32-loader.exe win32-loader
# Restoring cache
Restore_cache cache/packages.binary
# Installing depends
Install_package
# Copying win32-loader
cp -r chroot/usr/share/win32/* binary
else

View File

@ -49,26 +49,14 @@ then
exit 0
fi
case "${LB_BUILD_WITH_CHROOT}" in
true)
# Checking depends
Check_package chroot /usr/bin/grep-aptavail dctrl-tools
# Checking depends
Check_package chroot /usr/bin/grep-aptavail dctrl-tools
# Restoring cache
Restore_cache cache/packages.chroot
# Restoring cache
Restore_cache cache/packages.chroot
# Installing depends
Install_package
;;
false)
if [ ! -e /usr/bin/grep-aptavail ]; then
# dctrl-tools
Echo_error "/usr/bin/grep-aptavail - no such file."
exit 1
fi
;;
esac
# Installing depends
Install_package
if [ -e "${LIVE_BUILD}/share/bin/Packages" ]
then
@ -102,19 +90,10 @@ done
rm -f chroot/bin/Packages
case "${LB_BUILD_WITH_CHROOT}" in
true)
# Removing dctrl-tools again if the user has not installed it
if ! grep -qs dctrl-tools chroot/root/packages.chroot
then
# Removing depends
Remove_package
fi
Remove_package
# Saving cache
Save_cache cache/packages.chroot
;;
esac
# Saving cache
Save_cache cache/packages.chroot
# Creating stage file
Create_stagefile .build/chroot_package-lists.${_PASS}