diff options
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/build/chroot_linux-image | 102 |
1 files changed, 52 insertions, 50 deletions
diff --git a/scripts/build/chroot_linux-image b/scripts/build/chroot_linux-image index 4145bb955..0422ab6e8 100755 --- a/scripts/build/chroot_linux-image +++ b/scripts/build/chroot_linux-image @@ -24,6 +24,11 @@ Arguments "${@}" Read_conffiles config/all config/common config/bootstrap config/chroot config/binary config/source Set_defaults +if [ "${LB_LINUX_PACKAGES}" = "none" ] +then + exit 0 +fi + # Requiring stage file Require_stagefile .build/config .build/bootstrap @@ -43,78 +48,75 @@ Create_lockfile .lock # ;; #esac -if [ "${LB_LINUX_PACKAGES}" != "none" ] -then - for FLAVOUR in ${LB_LINUX_FLAVOURS} +for FLAVOUR in ${LB_LINUX_FLAVOURS} +do + for PACKAGE in ${LB_LINUX_PACKAGES} do - for PACKAGE in ${LB_LINUX_PACKAGES} - do - echo ${PACKAGE}-${FLAVOUR} >> chroot/root/packages.chroot - done + echo ${PACKAGE}-${FLAVOUR} >> chroot/root/packages.chroot done +done - # Include firmware packages - if [ "${LB_FIRMWARE_CHROOT}" = "true" ] - then - # Assumption: firmware packages install files into /lib/firmware - - # Get all firmware packages names - mkdir -p cache/contents.chroot +# Include firmware packages +if [ "${LB_FIRMWARE_CHROOT}" = "true" ] +then + # Assumption: firmware packages install files into /lib/firmware - FIRMWARE_PACKAGES="" + # Get all firmware packages names + mkdir -p cache/contents.chroot - _CONTENTS="$(for _PARENT_ARCHIVE_AREA in ${LIVE_IMAGE_PARENT_ARCHIVE_AREAS}; do echo ${LB_PARENT_MIRROR_CHROOT}/dists/${LB_PARENT_DISTRIBUTION}/${_PARENT_ARCHIVE_AREA}/Contents-${LIVE_IMAGE_ARCHITECTURE}.gz; done)" + FIRMWARE_PACKAGES="" - rm -f cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} + _CONTENTS="$(for _PARENT_ARCHIVE_AREA in ${LIVE_IMAGE_PARENT_ARCHIVE_AREAS}; do echo ${LB_PARENT_MIRROR_CHROOT}/dists/${LB_PARENT_DISTRIBUTION}/${_PARENT_ARCHIVE_AREA}/Contents-${LIVE_IMAGE_ARCHITECTURE}.gz; done)" - for _CONTENT in ${_CONTENTS} - do - wget ${WGET_OPTIONS} ${_CONTENT} -O - | gunzip -c >> cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} + rm -f cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} - FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} $(awk '/^lib\/firmware/ { print $2 }' cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} | sort -u)" - done - - if echo ${LIVE_IMAGE_PARENT_ARCHIVE_AREAS} | grep -qs "non-free" - then - # FIXME: should check that we're building on debian through e.g. a 'derivative-is-based-on' variable or somesuch. - # Manually add firmware-linux/non-free meta package - FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} firmware-linux" - fi + for _CONTENT in ${_CONTENTS} + do + wget ${WGET_OPTIONS} ${_CONTENT} -O - | gunzip -c >> cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} - if [ "${LB_DERIVATIVE}" = "true" ] - then - # FIXME: account for the fact that PARENT_DISTRIBUTION and DISTRIBUTION might be the same (to not have overlapping cache files for contents). + FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} $(awk '/^lib\/firmware/ { print $2 }' cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} | sort -u)" + done - _CONTENTS="$(for _ARCHIVE_AREA in ${LIVE_IMAGE_ARCHIVE_AREAS}; do echo ${LB_MIRROR_CHROOT}/dists/${LB_DISTRIBUTION}/${_ARCHIVE_AREA}/Contents-${LIVE_IMAGE_ARCHITECTURE}.gz; done)" + if echo ${LIVE_IMAGE_PARENT_ARCHIVE_AREAS} | grep -qs "non-free" + then + # FIXME: should check that we're building on debian through e.g. a 'derivative-is-based-on' variable or somesuch. + # Manually add firmware-linux/non-free meta package + FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} firmware-linux" + fi - rm -f cache/contents.chroot/contents.${LB_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} + if [ "${LB_DERIVATIVE}" = "true" ] + then + # FIXME: account for the fact that PARENT_DISTRIBUTION and DISTRIBUTION might be the same (to not have overlapping cache files for contents). - for _CONTENT in ${_CONTENTS} - do - wget ${WGET_OPTIONS} ${_CONTENT} -O - | gunzip -c >> cache/contents.chroot/contents.${LB_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} + _CONTENTS="$(for _ARCHIVE_AREA in ${LIVE_IMAGE_ARCHIVE_AREAS}; do echo ${LB_MIRROR_CHROOT}/dists/${LB_DISTRIBUTION}/${_ARCHIVE_AREA}/Contents-${LIVE_IMAGE_ARCHITECTURE}.gz; done)" - FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} $(awk '/^lib\/firmware/ { print $2 }' cache/contents.chroot/contents.${LB_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} | sort -u)" - done - fi + rm -f cache/contents.chroot/contents.${LB_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} - # Drop section and keep package names only - for _PACKAGE in ${FIRMWARE_PACKAGES} + for _CONTENT in ${_CONTENTS} do - echo $(echo ${_PACKAGE} | awk -F/ '{ print $NF }') >> chroot/root/packages.chroot + wget ${WGET_OPTIONS} ${_CONTENT} -O - | gunzip -c >> cache/contents.chroot/contents.${LB_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} + + FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} $(awk '/^lib\/firmware/ { print $2 }' cache/contents.chroot/contents.${LB_DISTRIBUTION}.${LIVE_IMAGE_ARCHITECTURE} | sort -u)" done + fi - # Some known licenses required to be accepted - if echo ${LIVE_IMAGE_PARENT_ARCHIVE_AREAS} | grep -qs "non-free" - then + # Drop section and keep package names only + for _PACKAGE in ${FIRMWARE_PACKAGES} + do + echo $(echo ${_PACKAGE} | awk -F/ '{ print $NF }') >> chroot/root/packages.chroot + done + + # Some known licenses required to be accepted + if echo ${LIVE_IMAGE_PARENT_ARCHIVE_AREAS} | grep -qs "non-free" + then cat >> chroot/root/packages.chroot.cfg << EOF firmware-ivtv firmware-ivtv/license/accepted boolean true firmware-ipw2x00 firmware-ipw2x00/license/accepted boolean true EOF - fi fi - - # Creating stage file - Create_stagefile .build/chroot_linux-image fi + +# Creating stage file +Create_stagefile .build/chroot_linux-image |